From 537bfd164f216871be950a5458abbb61c05d9ab9 Mon Sep 17 00:00:00 2001 From: Dana Powers Date: Fri, 3 Mar 2017 12:04:00 -0800 Subject: Dont refresh metadata on failed group coordinator request unless needed --- kafka/coordinator/base.py | 10 ++++------ 1 file 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 -- cgit v1.2.1