diff --git a/kazoo/protocol/connection.py b/kazoo/protocol/connection.py index fc3586c8..275c3771 100644 --- a/kazoo/protocol/connection.py +++ b/kazoo/protocol/connection.py @@ -589,10 +589,18 @@ def _connect_attempt(self, host, hostip, port, retry): # Ensure our timeout is positive timeout = max([read_timeout / 2.0 - jitter_time, jitter_time]) + select_start_time = time.time() s = self.handler.select([self._socket, self._read_sock], [], [], timeout)[0] if not s: + select_block_time = time.time() - select_start_time + if select_block_time > read_timeout: + self.logger.warning( + "Socket select took longer than expected: " + "%0.5f", + select_block_time + ) if self.ping_outstanding.is_set(): self.ping_outstanding.clear() raise ConnectionDropped(