aboutsummaryrefslogtreecommitdiff
path: root/weed/mq/pub_balancer/lookup.go
diff options
context:
space:
mode:
Diffstat (limited to 'weed/mq/pub_balancer/lookup.go')
-rw-r--r--weed/mq/pub_balancer/lookup.go6
1 files changed, 3 insertions, 3 deletions
diff --git a/weed/mq/pub_balancer/lookup.go b/weed/mq/pub_balancer/lookup.go
index 249aaaa1f..5b9ca5a05 100644
--- a/weed/mq/pub_balancer/lookup.go
+++ b/weed/mq/pub_balancer/lookup.go
@@ -10,7 +10,7 @@ var (
ErrNoBroker = errors.New("no broker")
)
-func (balancer *Balancer) LookupOrAllocateTopicPartitions(topic *mq_pb.Topic, publish bool, partitionCount int32) (assignments []*mq_pb.BrokerPartitionAssignment, err error) {
+func (balancer *Balancer) LookupOrAllocateTopicPartitions(topic *mq_pb.Topic, publish bool, partitionCount int32) (assignments []*mq_pb.BrokerPartitionAssignment, alreadyExists bool, err error) {
if partitionCount == 0 {
partitionCount = 6
}
@@ -37,7 +37,7 @@ func (balancer *Balancer) LookupOrAllocateTopicPartitions(topic *mq_pb.Topic, pu
}
if len(assignments) > 0 || !(publish && len(assignments) !=int(partitionCount) && partitionCount > 0) {
glog.V(0).Infof("existing topic partitions %d: %+v", len(assignments), assignments)
- return assignments, nil
+ return assignments, true, nil
}
// find the topic partitions on the filer
@@ -48,7 +48,7 @@ func (balancer *Balancer) LookupOrAllocateTopicPartitions(topic *mq_pb.Topic, pu
// return error not found
// t := topic.FromPbTopic(request.Topic)
if balancer.Brokers.IsEmpty() {
- return nil, ErrNoBroker
+ return nil, alreadyExists, ErrNoBroker
}
assignments = AllocateTopicPartitions(balancer.Brokers, partitionCount)
balancer.OnPartitionChange(topic, assignments)