Переглянути джерело

AMQP Result Backend: Enable auto_delete for the result queues again

Ask Solem 14 роки тому
батько
коміт
a3bd35c653
1 змінених файлів з 7 додано та 2 видалено
  1. 7 2
      celery/backends/amqp.py

+ 7 - 2
celery/backends/amqp.py

@@ -18,7 +18,12 @@ class AMQResultWarning(UserWarning):
 
 
 class ResultPublisher(Publisher):
-    auto_delete = False
+    exchange = conf.RESULT_EXCHANGE
+    exchange_type = conf.RESULT_EXCHANGE_TYPE
+    delivery_mode = conf.RESULT_PERSISTENT and 2 or 1
+    serializer = conf.RESULT_SERIALIZER
+    durable = conf.RESULT_PERSISTENT
+    auto_delete = True
 
     def __init__(self, connection, task_id, **kwargs):
         super(ResultPublisher, self).__init__(connection,
@@ -28,7 +33,7 @@ class ResultPublisher(Publisher):
 
 class ResultConsumer(Consumer):
     no_ack = True
-    auto_delete = False
+    auto_delete = True
 
     def __init__(self, connection, task_id, **kwargs):
         routing_key = task_id.replace("-", "")