diff options
author | Dana Powers <dana.powers@gmail.com> | 2018-03-09 11:25:36 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-03-09 11:25:36 -0500 |
commit | 1974dc19c5eac1527b99bae8e348557abe5cdcd2 (patch) | |
tree | 438c8d9250b2bc8f08fe3cda5e1fd688c637ef2c /kafka/conn.py | |
parent | 5446d1832c07f436cb306b2d27e8d74b6906b363 (diff) | |
download | kafka-python-1974dc19c5eac1527b99bae8e348557abe5cdcd2.tar.gz |
Only increase reconnect backoff if all addrinfos have been tried (#1423)
Diffstat (limited to 'kafka/conn.py')
-rw-r--r-- | kafka/conn.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/kafka/conn.py b/kafka/conn.py index bfaed6a..c2ac28e 100644 --- a/kafka/conn.py +++ b/kafka/conn.py @@ -264,7 +264,7 @@ class BrokerConnection(object): self._ssl_context = self.config['ssl_context'] self._sasl_auth_future = None self.last_attempt = 0 - self._gai = None + self._gai = [] self._sensors = None if self.config['metrics']: self._sensors = BrokerConnectionMetrics(self.config['metrics'], @@ -638,6 +638,9 @@ class BrokerConnection(object): self._reconnect_backoff = self.config['reconnect_backoff_ms'] / 1000.0 def _update_reconnect_backoff(self): + # Do not mark as failure if there are more dns entries available to try + if len(self._gai) > 0: + return if self.config['reconnect_backoff_max_ms'] > self.config['reconnect_backoff_ms']: self._failures += 1 self._reconnect_backoff = self.config['reconnect_backoff_ms'] * 2 ** (self._failures - 1) |