summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Powers <dana.powers@gmail.com>2017-03-03 12:04:00 -0800
committerDana Powers <dana.powers@gmail.com>2017-03-03 14:16:45 -0800
commit537bfd164f216871be950a5458abbb61c05d9ab9 (patch)
treeff890e23aec6e00f0509282b09ea5537454429e4
parent315850c87759d8379899fbfdc6a882100d4a7020 (diff)
downloadkafka-python-check_invalid_metadata.tar.gz
Dont refresh metadata on failed group coordinator request unless neededcheck_invalid_metadata
-rw-r--r--kafka/coordinator/base.py10
1 files changed, 4 insertions, 6 deletions
diff --git a/kafka/coordinator/base.py b/kafka/coordinator/base.py
index d6ffc3a..6e174c8 100644
--- a/kafka/coordinator/base.py
+++ b/kafka/coordinator/base.py
@@ -213,12 +213,10 @@ class BaseCoordinator(object):
self._client.poll(future=future)
if future.failed():
- if isinstance(future.exception,
- Errors.GroupCoordinatorNotAvailableError):
- continue
- elif future.retriable():
- metadata_update = self._client.cluster.request_update()
- self._client.poll(future=metadata_update)
+ if future.retriable():
+ if getattr(future.exception, 'invalid_metadata', False):
+ metadata_update = self._client.cluster.request_update()
+ self._client.poll(future=metadata_update)
else:
raise future.exception # pylint: disable-msg=raising-bad-type