summaryrefslogtreecommitdiff
path: root/kafka/client_async.py
diff options
context:
space:
mode:
authorDana Powers <dana.powers@gmail.com>2016-01-31 23:54:34 -0800
committerDana Powers <dana.powers@gmail.com>2016-02-01 00:10:08 -0800
commitd3d6ea939b85ca033293898e2c4c63eda2335aab (patch)
tree6e1ca915d3373a56d626f8a904417c5d45964754 /kafka/client_async.py
parent843b34732d3cc5593c9e03c5ea062d705086eb8c (diff)
downloadkafka-python-d3d6ea939b85ca033293898e2c4c63eda2335aab.tar.gz
Implement KafkaConsumer.topics()
- add ClusterMetadata.need_all_topic_metadata attribute - client requests metadata for all topics if attribute True
Diffstat (limited to 'kafka/client_async.py')
-rw-r--r--kafka/client_async.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/kafka/client_async.py b/kafka/client_async.py
index 04bdf36..029a419 100644
--- a/kafka/client_async.py
+++ b/kafka/client_async.py
@@ -514,8 +514,12 @@ class KafkaClient(object):
node_id = self.least_loaded_node()
+ topics = list(self._topics)
+ if self.cluster.need_all_topic_metadata:
+ topics = []
+
if self._can_send_request(node_id):
- request = MetadataRequest(list(self._topics))
+ request = MetadataRequest(topics)
log.debug("Sending metadata request %s to node %s", request, node_id)
future = self.send(node_id, request)
future.add_callback(self.cluster.update_metadata)