diff options
| author | chrislu <chris.lu@gmail.com> | 2022-02-08 00:53:55 -0800 |
|---|---|---|
| committer | chrislu <chris.lu@gmail.com> | 2022-02-08 00:53:55 -0800 |
| commit | f18803424aa64877971330e60d2a4207d5bf1bd2 (patch) | |
| tree | 426d9b4aa5c56702e92d6b840d1a595c88c7a64e /weed/shell/command_ec_decode.go | |
| parent | 98604059741190178efd26ad788d52f067b3097c (diff) | |
| download | seaweedfs-f18803424aa64877971330e60d2a4207d5bf1bd2.tar.xz seaweedfs-f18803424aa64877971330e60d2a4207d5bf1bd2.zip | |
volume.balance: add delay during tight loop
fix https://github.com/chrislusf/seaweedfs/issues/2637
Diffstat (limited to 'weed/shell/command_ec_decode.go')
| -rw-r--r-- | weed/shell/command_ec_decode.go | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/weed/shell/command_ec_decode.go b/weed/shell/command_ec_decode.go index 288fa4945..de22990fa 100644 --- a/weed/shell/command_ec_decode.go +++ b/weed/shell/command_ec_decode.go @@ -8,6 +8,7 @@ import ( "github.com/chrislusf/seaweedfs/weed/pb" "github.com/chrislusf/seaweedfs/weed/storage/types" "io" + "time" "google.golang.org/grpc" @@ -53,7 +54,7 @@ func (c *commandEcDecode) Do(args []string, commandEnv *CommandEnv, writer io.Wr vid := needle.VolumeId(*volumeId) // collect topology information - topologyInfo, _, err := collectTopologyInfo(commandEnv) + topologyInfo, _, err := collectTopologyInfo(commandEnv, 0) if err != nil { return err } @@ -233,7 +234,11 @@ func lookupVolumeIds(commandEnv *CommandEnv, volumeIds []string) (volumeIdLocati return resp.VolumeIdLocations, nil } -func collectTopologyInfo(commandEnv *CommandEnv) (topoInfo *master_pb.TopologyInfo, volumeSizeLimitMb uint64, err error) { +func collectTopologyInfo(commandEnv *CommandEnv, delayBeforeCollecting time.Duration) (topoInfo *master_pb.TopologyInfo, volumeSizeLimitMb uint64, err error) { + + if delayBeforeCollecting > 0 { + time.Sleep(delayBeforeCollecting) + } var resp *master_pb.VolumeListResponse err = commandEnv.MasterClient.WithClient(false, func(client master_pb.SeaweedClient) error { |
