From 9c2f3b1b0f2b7e4617975edde4f4872ff6418641 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Sun, 10 Nov 2019 12:06:41 -0800 Subject: [PATCH] fix rack_not_found case fix rack_not_found in https://github.com/chrislusf/seaweedfs/issues/1111 --- weed/shell/command_ec_balance.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/weed/shell/command_ec_balance.go b/weed/shell/command_ec_balance.go index 47ae7bad3..8bf993f4a 100644 --- a/weed/shell/command_ec_balance.go +++ b/weed/shell/command_ec_balance.go @@ -266,6 +266,10 @@ func doBalanceEcShardsAcrossRacks(ctx context.Context, commandEnv *CommandEnv, c for shardId, ecNode := range ecShardsToMove { rackId := pickOneRack(racks, rackToShardCount, averageShardsPerEcRack) + if rackId == "" { + fmt.Printf("ec shard %d.%d at %s can not find a destination rack\n", vid, shardId, ecNode.info.Id) + continue + } var possibleDestinationEcNodes []*EcNode for _, n := range racks[rackId].ecNodes { possibleDestinationEcNodes = append(possibleDestinationEcNodes, n)