From 2e6a43839bde28c3eaeeb010bcdfb936ae54730f Mon Sep 17 00:00:00 2001 From: Dana Powers Date: Sat, 28 Sep 2019 15:58:17 -0700 Subject: Rely on selector to detect completed connection attempts --- kafka/conn.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'kafka/conn.py') diff --git a/kafka/conn.py b/kafka/conn.py index 5ef141c..07b667a 100644 --- a/kafka/conn.py +++ b/kafka/conn.py @@ -748,16 +748,16 @@ class BrokerConnection(object): """ Return the number of milliseconds to wait, based on the connection state, before attempting to send data. When disconnected, this respects - the reconnect backoff time. When connecting, returns 0 to allow - non-blocking connect to finish. When connected, returns a very large - number to handle slow/stalled connections. + the reconnect backoff time. When connecting or connected, returns a very + large number to handle slow/stalled connections. """ time_waited = time.time() - (self.last_attempt or 0) if self.state is ConnectionStates.DISCONNECTED: return max(self._reconnect_backoff - time_waited, 0) * 1000 - elif self.connecting(): - return 0 else: + # When connecting or connected, we should be able to delay + # indefinitely since other events (connection or data acked) will + # cause a wakeup once data can be sent. return float('inf') def connected(self): -- cgit v1.2.1