Skip to content

Commit c2611e9

Browse files
committed
Set timeout properly for Requests and Thrift connections
1 parent ad8a1a3 commit c2611e9

File tree

3 files changed

+13
-2
lines changed

3 files changed

+13
-2
lines changed

elasticsearch/connection/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ def __init__(self, host='localhost', port=9200, url_prefix='', timeout=10, **kwa
2828
if url_prefix:
2929
url_prefix = '/' + url_prefix.strip('/')
3030
self.url_prefix = url_prefix
31-
self.timeout = 10
31+
self.timeout = timeout
3232

3333
def __repr__(self):
3434
return '<%s: %s>' % (self.__class__.__name__, self.host)

elasticsearch/connection/http_urllib3.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ def __init__(self, host='localhost', port=9200, http_auth=None, use_ssl=False, m
3030
if use_ssl:
3131
pool_class = urllib3.HTTPSConnectionPool
3232

33-
self.pool = pool_class(host, port=port, timeout=kwargs.get('timeout', None), headers=headers, maxsize=maxsize)
33+
self.pool = pool_class(host, port=port, timeout=self.timeout, headers=headers, maxsize=maxsize)
3434

3535
def perform_request(self, method, url, params=None, body=None, timeout=None, ignore=()):
3636
url = self.url_prefix + url

test_elasticsearch/test_connection.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,15 @@ def test_use_normal_tsocket_by_default(self):
2424
con = ThriftConnection()
2525
self.assertIs(con._tsocket_class, TSocket.TSocket)
2626

27+
def test_timeout_set(self):
28+
con = ThriftConnection(timeout=42)
29+
self.assertEquals(42, con.timeout)
2730

2831
class TestUrllib3Connection(TestCase):
32+
def test_timeout_set(self):
33+
con = Urllib3HttpConnection(timeout=42)
34+
self.assertEquals(42, con.timeout)
35+
2936
def test_http_auth(self):
3037
con = Urllib3HttpConnection(http_auth='username:secret')
3138
self.assertEquals({'authorization': 'Basic dXNlcm5hbWU6c2VjcmV0'}, con.pool.headers)
@@ -72,6 +79,10 @@ def _get_request(self, connection, *args, **kwargs):
7279
self.assertEquals(1, len(args))
7380
return args[0]
7481

82+
def test_timeout_set(self):
83+
con = RequestsHttpConnection(timeout=42)
84+
self.assertEquals(42, con.timeout)
85+
7586
def test_use_https_if_specified(self):
7687
con = self._get_mock_connection({'use_ssl': True, 'url_prefix': 'url'})
7788
request = self._get_request(con, 'GET', '/')

0 commit comments

Comments
 (0)