From 0737ecf6a73cab61d52b40fd7a405c0827dd1ae8 Mon Sep 17 00:00:00 2001 From: Josip Sokcevic Date: Thu, 26 Apr 2018 19:30:25 -0700 Subject: [PATCH] Remove python socket timeout Timeout is already set in HttpClient. The reason for removal is issue with gunicorn and gevent as described here https://github.com/benoitc/gunicorn/pull/1616 --- lib/py/src/transport/THttpClient.py | 19 ------------------- 1 file changed, 19 deletions(-) diff --git a/lib/py/src/transport/THttpClient.py b/lib/py/src/transport/THttpClient.py index 60ff226a906..37b0a4d8ddc 100644 --- a/lib/py/src/transport/THttpClient.py +++ b/lib/py/src/transport/THttpClient.py @@ -19,7 +19,6 @@ from io import BytesIO import os -import socket import ssl import sys import warnings @@ -128,9 +127,6 @@ def isOpen(self): return self.__http is not None def setTimeout(self, ms): - if not hasattr(socket, 'getdefaulttimeout'): - raise NotImplementedError - if ms is None: self.__timeout = None else: @@ -145,17 +141,6 @@ def read(self, sz): def write(self, buf): self.__wbuf.write(buf) - def __withTimeout(f): - def _f(*args, **kwargs): - orig_timeout = socket.getdefaulttimeout() - socket.setdefaulttimeout(args[0].__timeout) - try: - result = f(*args, **kwargs) - finally: - socket.setdefaulttimeout(orig_timeout) - return result - return _f - def flush(self): if self.isOpen(): self.close() @@ -200,7 +185,3 @@ def flush(self): self.code = self.__http_response.status self.message = self.__http_response.reason self.headers = self.__http_response.msg - - # Decorate if we know how to timeout - if hasattr(socket, 'getdefaulttimeout'): - flush = __withTimeout(flush)