소스 검색

celeryev crashed when terminal is resized. Closes #160.

Ask Solem 14 년 전
부모
커밋
0852fe8b5c
1개의 변경된 파일7개의 추가작업 그리고 1개의 파일을 삭제
  1. 7 1
      celery/events/__init__.py

+ 7 - 1
celery/events/__init__.py

@@ -132,7 +132,13 @@ class EventReceiver(object):
             for iteration in count(0):
                 if limit and iteration > limit:
                     break
-                consumer.connection.drain_events(timeout=timeout)
+                try:
+                    consumer.connection.drain_events(timeout=timeout)
+                except socket.timeout:
+                    if timeout:
+                        raise
+                except socket.error:
+                    pass
         finally:
             consumer.close()