diff options
author | Dana Powers <dana.powers@gmail.com> | 2016-04-25 11:59:38 -0700 |
---|---|---|
committer | Dana Powers <dana.powers@gmail.com> | 2016-04-25 12:02:16 -0700 |
commit | 37cffc3327df6aca6e14c8143551f47038b80f62 (patch) | |
tree | e6423f7108a32de9ecf3c4fd404731b8177a2791 | |
parent | 1bc2ce07782468eb4f244ad79a9784d10d5bc910 (diff) | |
download | kafka-python-coordinator_del.tar.gz |
Avoid some exceptions in Coordinator.__del__coordinator_del
-rw-r--r-- | kafka/coordinator/base.py | 3 | ||||
-rw-r--r-- | kafka/coordinator/consumer.py | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/kafka/coordinator/base.py b/kafka/coordinator/base.py index a4c25a3..168115a 100644 --- a/kafka/coordinator/base.py +++ b/kafka/coordinator/base.py @@ -89,7 +89,8 @@ class BaseCoordinator(object): #self.sensors = GroupCoordinatorMetrics(metrics, metric_group_prefix, metric_tags) def __del__(self): - self.heartbeat_task.disable() + if hasattr(self, 'heartbeat_task') and self.heartbeat_task: + self.heartbeat_task.disable() @abc.abstractmethod def protocol_type(self): diff --git a/kafka/coordinator/consumer.py b/kafka/coordinator/consumer.py index 50d2806..196bcc7 100644 --- a/kafka/coordinator/consumer.py +++ b/kafka/coordinator/consumer.py @@ -106,7 +106,8 @@ class ConsumerCoordinator(BaseCoordinator): def __del__(self): if hasattr(self, '_auto_commit_task') and self._auto_commit_task: self._auto_commit_task.disable() - self._cluster.remove_listener(WeakMethod(self._handle_metadata_update)) + if hasattr(self, '_cluster') and self._cluster: + self._cluster.remove_listener(WeakMethod(self._handle_metadata_update)) def protocol_type(self): return ConsumerProtocol.PROTOCOL_TYPE |