Просмотр исходного кода

If we can't connect, the leader is not available

If kafka gave us a broker we can't talk to (which we suspected because it was
already dead), then mark the partition as LeaderNotAvailable so that subsequent
calls to Leader don't return it unnecessarily
Evan Huus 11 лет назад
Родитель
Сommit
21fb992498
1 измененных файлов с 1 добавлено и 0 удалено
  1. 1 0
      client.go

+ 1 - 0
client.go

@@ -549,6 +549,7 @@ func (client *Client) update(data *MetadataResponse) ([]string, error) {
 				broker := client.brokers[partition.Leader]
 				if _, present := client.deadBrokerAddrs[broker.Addr()]; present {
 					if connected, _ := broker.Connected(); !connected {
+						partition.Err = LeaderNotAvailable
 						toRetry[topic.Name] = true
 					}
 				}