summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Powers <dana.powers@gmail.com>2019-12-29 16:04:53 -0800
committerGitHub <noreply@github.com>2019-12-29 16:04:53 -0800
commit1a91a54688cb77fd77c342e719f24f346d5cee89 (patch)
treea5cddec442a30f1221975e403cc2c366c6d8a5ee
parent23534b45b8362e4a0e6b5d8b2fa86cb68cf38e08 (diff)
downloadkafka-python-1a91a54688cb77fd77c342e719f24f346d5cee89.tar.gz
Do not block on sender thread join after timeout in producer.close() (#1974)
-rw-r--r--kafka/producer/kafka.py6
1 files changed, 1 insertions, 5 deletions
diff --git a/kafka/producer/kafka.py b/kafka/producer/kafka.py
index b90ca88..9509ab9 100644
--- a/kafka/producer/kafka.py
+++ b/kafka/producer/kafka.py
@@ -445,7 +445,7 @@ class KafkaProducer(object):
self._cleanup = None
def __del__(self):
- self.close(timeout=0)
+ self.close()
def close(self, timeout=None):
"""Close this producer.
@@ -484,14 +484,10 @@ class KafkaProducer(object):
self._sender.join(timeout)
if self._sender is not None and self._sender.is_alive():
-
log.info("Proceeding to force close the producer since pending"
" requests could not be completed within timeout %s.",
timeout)
self._sender.force_close()
- # Only join the sender thread when not calling from callback.
- if not invoked_from_callback:
- self._sender.join()
self._metrics.close()
try: