use EnvironmentError instead of socket.error

This commit is contained in:
William Pitcock 2016-02-01 09:57:27 -05:00
parent db52b6e66b
commit 448bb0a94d
3 changed files with 24 additions and 24 deletions

View File

@ -58,7 +58,7 @@ class AsyncWorker(base.Worker):
exc_info = sys.exc_info() exc_info = sys.exc_info()
# pass to next try-except level # pass to next try-except level
six.reraise(exc_info[0], exc_info[1], exc_info[2]) six.reraise(exc_info[0], exc_info[1], exc_info[2])
except socket.error: except EnvironmentError:
exc_info = sys.exc_info() exc_info = sys.exc_info()
# pass to next try-except level # pass to next try-except level
six.reraise(exc_info[0], exc_info[1], exc_info[2]) six.reraise(exc_info[0], exc_info[1], exc_info[2])
@ -71,11 +71,11 @@ class AsyncWorker(base.Worker):
else: else:
self.log.debug("Error processing SSL request.") self.log.debug("Error processing SSL request.")
self.handle_error(req, client, addr, e) self.handle_error(req, client, addr, e)
except socket.error as e: except EnvironmentError as e:
if e.args[0] not in (errno.EPIPE, errno.ECONNRESET): if e.errno not in (errno.EPIPE, errno.ECONNRESET):
self.log.exception("Socket error processing request.") self.log.exception("Socket error processing request.")
else: else:
if e.args[0] == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
self.log.debug("Ignoring connection reset") self.log.debug("Ignoring connection reset")
else: else:
self.log.debug("Ignoring EPIPE") self.log.debug("Ignoring EPIPE")
@ -121,7 +121,7 @@ class AsyncWorker(base.Worker):
raise StopIteration() raise StopIteration()
except StopIteration: except StopIteration:
raise raise
except socket.error: except EnvironmentError:
# If the original exception was a socket.error we delegate # If the original exception was a socket.error we delegate
# handling it to the caller (where handle() might ignore it) # handling it to the caller (where handle() might ignore it)
six.reraise(*sys.exc_info()) six.reraise(*sys.exc_info())
@ -133,7 +133,7 @@ class AsyncWorker(base.Worker):
try: try:
sock.shutdown(socket.SHUT_RDWR) sock.shutdown(socket.SHUT_RDWR)
sock.close() sock.close()
except socket.error: except EnvironmentError:
pass pass
raise StopIteration() raise StopIteration()
raise raise

View File

@ -135,8 +135,8 @@ class ThreadWorker(base.Worker):
self.nr_conns += 1 self.nr_conns += 1
# enqueue the job # enqueue the job
self.enqueue_req(conn) self.enqueue_req(conn)
except socket.error as e: except EnvironmentError as e:
if e.args[0] not in (errno.EAGAIN, if e.errno not in (errno.EAGAIN,
errno.ECONNABORTED, errno.EWOULDBLOCK): errno.ECONNABORTED, errno.EWOULDBLOCK):
raise raise
@ -176,8 +176,8 @@ class ThreadWorker(base.Worker):
with self._lock: with self._lock:
try: try:
self.poller.unregister(conn.sock) self.poller.unregister(conn.sock)
except socket.error as e: except EnvironmentError as e:
if e.args[0] != errno.EBADF: if e.errno != errno.EBADF:
raise raise
# close the socket # close the socket
@ -287,11 +287,11 @@ class ThreadWorker(base.Worker):
self.log.debug("Error processing SSL request.") self.log.debug("Error processing SSL request.")
self.handle_error(req, conn.sock, conn.addr, e) self.handle_error(req, conn.sock, conn.addr, e)
except socket.error as e: except EnvironmentError as e:
if e.args[0] not in (errno.EPIPE, errno.ECONNRESET): if e.errno not in (errno.EPIPE, errno.ECONNRESET):
self.log.exception("Socket error processing request.") self.log.exception("Socket error processing request.")
else: else:
if e.args[0] == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
self.log.debug("Ignoring connection reset") self.log.debug("Ignoring connection reset")
else: else:
self.log.debug("Ignoring connection epipe") self.log.debug("Ignoring connection epipe")
@ -338,7 +338,7 @@ class ThreadWorker(base.Worker):
if resp.should_close(): if resp.should_close():
self.log.debug("Closing connection.") self.log.debug("Closing connection.")
return False return False
except socket.error: except EnvironmentError:
exc_info = sys.exc_info() exc_info = sys.exc_info()
# pass to next try-except level # pass to next try-except level
six.reraise(exc_info[0], exc_info[1], exc_info[2]) six.reraise(exc_info[0], exc_info[1], exc_info[2])
@ -350,7 +350,7 @@ class ThreadWorker(base.Worker):
try: try:
conn.sock.shutdown(socket.SHUT_RDWR) conn.sock.shutdown(socket.SHUT_RDWR)
conn.sock.close() conn.sock.close()
except socket.error: except EnvironmentError:
pass pass
raise StopIteration() raise StopIteration()
raise raise

View File

@ -69,8 +69,8 @@ class SyncWorker(base.Worker):
# process. # process.
continue continue
except socket.error as e: except EnvironmentError as e:
if e.args[0] not in (errno.EAGAIN, errno.ECONNABORTED, if e.errno not in (errno.EAGAIN, errno.ECONNABORTED,
errno.EWOULDBLOCK): errno.EWOULDBLOCK):
raise raise
@ -95,8 +95,8 @@ class SyncWorker(base.Worker):
for listener in ready: for listener in ready:
try: try:
self.accept(listener) self.accept(listener)
except socket.error as e: except EnvironmentError as e:
if e.args[0] not in (errno.EAGAIN, errno.ECONNABORTED, if e.errno not in (errno.EAGAIN, errno.ECONNABORTED,
errno.EWOULDBLOCK): errno.EWOULDBLOCK):
raise raise
@ -139,11 +139,11 @@ class SyncWorker(base.Worker):
else: else:
self.log.debug("Error processing SSL request.") self.log.debug("Error processing SSL request.")
self.handle_error(req, client, addr, e) self.handle_error(req, client, addr, e)
except socket.error as e: except EnvironmentError as e:
if e.args[0] not in (errno.EPIPE, errno.ECONNRESET): if e.errno not in (errno.EPIPE, errno.ECONNRESET):
self.log.exception("Socket error processing request.") self.log.exception("Socket error processing request.")
else: else:
if e.args[0] == errno.ECONNRESET: if e.errno == errno.ECONNRESET:
self.log.debug("Ignoring connection reset") self.log.debug("Ignoring connection reset")
else: else:
self.log.debug("Ignoring EPIPE") self.log.debug("Ignoring EPIPE")
@ -181,7 +181,7 @@ class SyncWorker(base.Worker):
finally: finally:
if hasattr(respiter, "close"): if hasattr(respiter, "close"):
respiter.close() respiter.close()
except socket.error: except EnvironmentError:
exc_info = sys.exc_info() exc_info = sys.exc_info()
# pass to next try-except level # pass to next try-except level
six.reraise(exc_info[0], exc_info[1], exc_info[2]) six.reraise(exc_info[0], exc_info[1], exc_info[2])
@ -193,7 +193,7 @@ class SyncWorker(base.Worker):
try: try:
client.shutdown(socket.SHUT_RDWR) client.shutdown(socket.SHUT_RDWR)
client.close() client.close()
except socket.error: except EnvironmentError:
pass pass
raise StopIteration() raise StopIteration()
raise raise