Explorar el Código

connection_diagnostics now supports carrot versions >= 0.4.0

Ask Solem hace 16 años
padre
commit
434a1350b1
Se han modificado 1 ficheros con 6 adiciones y 1 borrados
  1. 6 1
      celery/worker.py

+ 6 - 1
celery/worker.py

@@ -250,7 +250,12 @@ class TaskDaemon(object):
     def connection_diagnostics(self):
         """Diagnose the AMQP connection, and reset connection if
         necessary."""
-        if not self.task_consumer.channel.connection:
+        if hasattr(self.task_consumer.backend):
+            connection = self.task_consumer.backend.channel.connection
+        else:
+            connection = self.task_consumer.channel.connection
+
+        if not connection:
             self.logger.info(
                     "AMQP Connection has died, restoring connection.")
             self.reset_connection()