summaryrefslogtreecommitdiff
path: root/kombu/transport/zmq.py
diff options
context:
space:
mode:
authorJesper Thomschütz <jesper@jespersaur.com>2013-10-03 12:02:43 +0100
committerAsk Solem <ask@celeryproject.org>2013-10-03 12:46:08 +0100
commite5830448f18f77cf5e2bd1a673509d5b2795dd71 (patch)
treee92b9c4d1068416c999550331956bbfb4f29cebc /kombu/transport/zmq.py
parent789abab5bb483f52b10ac2d5060896d66351e861 (diff)
downloadkombu-e5830448f18f77cf5e2bd1a673509d5b2795dd71.tar.gz
zmq transport: Respect the timeout argument in Client.get()
Diffstat (limited to 'kombu/transport/zmq.py')
-rw-r--r--kombu/transport/zmq.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/kombu/transport/zmq.py b/kombu/transport/zmq.py
index e23b984e..488410ff 100644
--- a/kombu/transport/zmq.py
+++ b/kombu/transport/zmq.py
@@ -136,7 +136,12 @@ class Client(object):
def get(self, queue=None, timeout=None):
try:
- return self.sink.recv(flags=zmq.NOBLOCK)
+ original_timeout = self.sink.RCVTIMEO
+ if timeout:
+ self.sink.RCVTIMEO = timeout
+ result = self.sink.recv()
+ self.sink.RCVTIMEO = original_timeout
+ return result
except ZMQError as exc:
if exc.errno == zmq.EAGAIN:
raise socket.error(errno.EAGAIN, exc.strerror)