浏览代码

Be backward compatible if eta is already a datetime object (not iso 8601)

Ask Solem 15 年之前
父节点
当前提交
1e48f161b7
共有 1 个文件被更改,包括 3 次插入1 次删除
  1. 3 1
      celery/worker/__init__.py

+ 3 - 1
celery/worker/__init__.py

@@ -7,6 +7,7 @@ import traceback
 import logging
 import socket
 from Queue import Queue
+from datetime import datetime
 
 from dateutil.parser import parse as parse_iso8601
 from carrot.connection import DjangoBrokerConnection, AMQPConnectionException
@@ -107,7 +108,8 @@ class CarrotListener(object):
 
         eta = message_data.get("eta")
         if eta:
-            eta = parse_iso8601(eta)
+            if not isinstance(eta, datetime):
+                eta = parse_iso8601(eta)
             self.prefetch_count.increment()
             self.logger.info("Got task from broker: %s[%s] eta:[%s]" % (
                     task.task_name, task.task_id, eta))