summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Powers <dana.powers@gmail.com>2016-01-27 13:16:09 -0800
committerDana Powers <dana.powers@gmail.com>2016-01-27 16:20:28 -0800
commit421977a3421d505a22d3c26aff5fbbd1b209bbba (patch)
treeb7a2837ef907dd6ec941d58fea35c899844da77f
parent0daab2cadca1751103e92189a96d769d7050e097 (diff)
downloadkafka-python-421977a3421d505a22d3c26aff5fbbd1b209bbba.tar.gz
Catch dns lookup errors when attempting to connect to nodes
-rw-r--r--kafka/conn.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/kafka/conn.py b/kafka/conn.py
index a611e2b..14c3b50 100644
--- a/kafka/conn.py
+++ b/kafka/conn.py
@@ -82,7 +82,10 @@ class BrokerConnection(object):
self._sock.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF,
self.config['send_buffer_bytes'])
self._sock.setblocking(False)
- ret = self._sock.connect_ex((self.host, self.port))
+ try:
+ ret = self._sock.connect_ex((self.host, self.port))
+ except socket.error as ret:
+ pass
self.last_attempt = time.time()
if not ret or ret is errno.EISCONN:
@@ -105,7 +108,10 @@ class BrokerConnection(object):
self.last_failure = time.time()
else:
- ret = self._sock.connect_ex((self.host, self.port))
+ try:
+ ret = self._sock.connect_ex((self.host, self.port))
+ except socket.error as ret:
+ pass
if not ret or ret is errno.EISCONN:
self.state = ConnectionStates.CONNECTED
elif ret is not errno.EALREADY: