From c55828ade9e6ec9abdc2f00a725df1722eea9c4b Mon Sep 17 00:00:00 2001 From: brichardson Date: Mon, 5 Jul 2010 14:38:27 -0600 Subject: [PATCH] fixed network timeout option being ignored --- pymongo/connection.py | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-) diff --git a/pymongo/connection.py b/pymongo/connection.py index 6fa4375..c6c884f 100644 --- a/pymongo/connection.py +++ b/pymongo/connection.py @@ -185,7 +185,11 @@ class Connection(object): # TODO support auth for pooling self.__pool = Pool(self.__connect) - self.__network_timeout = network_timeout + if network_timeout: + self.__network_timeout = network_timeout + else: + self.__network_timeout = _CONNECT_TIMEOUT + self.__document_class = document_class self.__tz_aware = tz_aware @@ -457,9 +461,8 @@ class Connection(object): # TODO support auth for pooling try: sock = socket.socket() sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) - sock.settimeout(_CONNECT_TIMEOUT) - sock.connect((host, port)) sock.settimeout(self.__network_timeout) + sock.connect((host, port)) master = self.__master(sock) if master or self.__slave_okay: self.__host = host @@ -489,9 +492,8 @@ class Connection(object): # TODO support auth for pooling try: sock = socket.socket() sock.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) - sock.settimeout(_CONNECT_TIMEOUT) - sock.connect((self.__host, self.__port)) sock.settimeout(self.__network_timeout) + sock.connect((self.__host, self.__port)) return sock except socket.error: raise AutoReconnect("could not connect to %r" % self.__nodes) -- 1.6.3.3