summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kafka/cluster.py3
-rw-r--r--kafka/errors.py4
2 files changed, 6 insertions, 1 deletions
diff --git a/kafka/cluster.py b/kafka/cluster.py
index 45f25ad..8078eb7 100644
--- a/kafka/cluster.py
+++ b/kafka/cluster.py
@@ -214,7 +214,8 @@ class ClusterMetadata(object):
return self.failed_update(error)
if not metadata.brokers:
- log.warning("No broker metadata found in MetadataResponse")
+ log.warning("No broker metadata found in MetadataResponse -- ignoring.")
+ return self.failed_update(Errors.MetadataEmptyBrokerList(metadata))
_new_brokers = {}
for broker in metadata.brokers:
diff --git a/kafka/errors.py b/kafka/errors.py
index f4c8740..93a9f40 100644
--- a/kafka/errors.py
+++ b/kafka/errors.py
@@ -54,6 +54,10 @@ class StaleMetadata(KafkaError):
invalid_metadata = True
+class MetadataEmptyBrokerList(KafkaError):
+ retriable = True
+
+
class UnrecognizedBrokerVersion(KafkaError):
pass