summaryrefslogtreecommitdiff
path: root/kafka/client_async.py
diff options
context:
space:
mode:
authorDana Powers <dana.powers@gmail.com>2016-02-17 10:35:02 -0800
committerDana Powers <dana.powers@gmail.com>2016-02-17 10:35:02 -0800
commitbcdefd698d03af65413d9feff522b22dd3b7eebb (patch)
tree53b9e5f662a0f583f82513c6b4f6e549f7088478 /kafka/client_async.py
parent9f0db5d38b444f5a93da7bed4a19114aff8701e8 (diff)
parentd7522b0fb79bffbe10a2548658a48829dd1a5c33 (diff)
downloadkafka-python-bcdefd698d03af65413d9feff522b22dd3b7eebb.tar.gz
Merge pull request #553 from aisch/kafka_client_fd_leak
break up some circular references and close client wake pipe on __del__
Diffstat (limited to 'kafka/client_async.py')
-rw-r--r--kafka/client_async.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/kafka/client_async.py b/kafka/client_async.py
index f048be9..8647e3e 100644
--- a/kafka/client_async.py
+++ b/kafka/client_async.py
@@ -97,6 +97,10 @@ class KafkaClient(object):
self._bootstrap(collect_hosts(self.config['bootstrap_servers']))
self._wake_r, self._wake_w = os.pipe()
+ def __del__(self):
+ os.close(self._wake_r)
+ os.close(self._wake_w)
+
def _bootstrap(self, hosts):
# Exponential backoff if bootstrap fails
backoff_ms = self.config['reconnect_backoff_ms'] * 2 ** self._bootstrap_fails