瀏覽代碼

Worker: Fixes on_unknown_message for proto1

Ask Solem 9 年之前
父節點
當前提交
7d4c9bc326
共有 1 個文件被更改,包括 4 次插入1 次删除
  1. 4 1
      celery/worker/consumer.py

+ 4 - 1
celery/worker/consumer.py

@@ -439,7 +439,10 @@ class Consumer(object):
 
     def on_unknown_task(self, body, message, exc):
         error(UNKNOWN_TASK_ERROR, exc, dump_body(message, body), exc_info=True)
-        id_, name = message.headers['id'], message.headers['task']
+        try:
+            id_, name = message.headers['id'], message.headers['task']
+        except KeyError:  # proto1
+            id_, name = body['id'], body['task']
         message.reject_log_error(logger, self.connection_errors)
         self.app.backend.mark_as_failure(id_, NotRegistered(name))
         if self.event_dispatcher: