From 7fc032ccd058eb16c77c2168ceea4052e2b3c264 Mon Sep 17 00:00:00 2001 From: Dana Powers Date: Tue, 12 Jul 2016 08:40:14 -0700 Subject: For zookeeper offset storage, set a "coordinator" with least_loaded_node --- kafka/coordinator/base.py | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'kafka/coordinator/base.py') diff --git a/kafka/coordinator/base.py b/kafka/coordinator/base.py index 168115a..25dd000 100644 --- a/kafka/coordinator/base.py +++ b/kafka/coordinator/base.py @@ -50,6 +50,7 @@ class BaseCoordinator(object): 'session_timeout_ms': 30000, 'heartbeat_interval_ms': 3000, 'retry_backoff_ms': 100, + 'api_version': (0, 9), } def __init__(self, client, **configs): @@ -194,6 +195,14 @@ class BaseCoordinator(object): """ while self.coordinator_unknown(): + # Prior to 0.8.2 there was no group coordinator + # so we will just pick a node at random and treat + # it as the "coordinator" + if self.config['api_version'] < (0, 8, 2): + self.coordinator_id = self._client.least_loaded_node() + self._client.ready(self.coordinator_id) + continue + future = self._send_group_coordinator_request() self._client.poll(future=future) -- cgit v1.2.1