aboutsummaryrefslogtreecommitdiff
path: root/weed
diff options
context:
space:
mode:
Diffstat (limited to 'weed')
-rw-r--r--weed/mq/broker/broker_grpc_balancer.go10
1 files changed, 7 insertions, 3 deletions
diff --git a/weed/mq/broker/broker_grpc_balancer.go b/weed/mq/broker/broker_grpc_balancer.go
index 63dda7d69..e602f4bad 100644
--- a/weed/mq/broker/broker_grpc_balancer.go
+++ b/weed/mq/broker/broker_grpc_balancer.go
@@ -20,11 +20,15 @@ func (broker *MessageQueueBroker) ConnectToBalancer(stream mq_pb.SeaweedMessagin
// process init message
initMessage := req.GetInit()
- brokerStats := balancer.NewBrokerStats()
+ var brokerStats *balancer.BrokerStats
if initMessage != nil {
- broker.Balancer.Brokers.Set(initMessage.Broker, brokerStats)
+ var found bool
+ brokerStats, found = broker.Balancer.Brokers.Get(initMessage.Broker)
+ if !found {
+ brokerStats = balancer.NewBrokerStats()
+ broker.Balancer.Brokers.Set(initMessage.Broker, brokerStats)
+ }
} else {
- // TODO fix this
return status.Errorf(codes.InvalidArgument, "balancer init message is empty")
}
defer func() {