summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy McCurdy <andy@andymccurdy.com>2015-11-02 11:20:28 -0800
committerAndy McCurdy <andy@andymccurdy.com>2015-11-02 11:20:28 -0800
commit69e38ceda52cc03ad238e522cd9df588f413cbef (patch)
tree0b00f9ea7602bdb0270c921f6546870b011291f4
parent4001afc9a993a23850f77961f33a4719f40e1f12 (diff)
downloadredis-py-69e38ceda52cc03ad238e522cd9df588f413cbef.tar.gz
ignore errors raised in SocketBuffer's close method. See #633.
-rwxr-xr-xredis/connection.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/redis/connection.py b/redis/connection.py
index 776bab8..9d39dbb 100755
--- a/redis/connection.py
+++ b/redis/connection.py
@@ -185,8 +185,16 @@ class SocketBuffer(object):
self.bytes_read = 0
def close(self):
- self.purge()
- self._buffer.close()
+ try:
+ self.purge()
+ self._buffer.close()
+ except:
+ # issue #633 suggests the purge/close someone raised a
+ # BadFileDescriptor error. Perhaps the client ran out of
+ # memory or something else? It's probably OK to ignore
+ # any error being raised from purge/close since we're
+ # removing the the reference to the instance below.
+ pass
self._buffer = None
self._sock = None