Ask Solem %!s(int64=14) %!d(string=hai) anos
pai
achega
c1eb62f9d3
Modificáronse 2 ficheiros con 4 adicións e 7 borrados
  1. 2 5
      celery/backends/base.py
  2. 2 2
      celery/backends/database.py

+ 2 - 5
celery/backends/base.py

@@ -161,10 +161,7 @@ class BaseDictBackend(BaseBackend):
 
     def get_status(self, task_id):
         """Get the status of a task."""
-        task_meta = self.get_task_meta(task_id)
-        if task_meta is None:
-            return states.PENDING
-        return task_meta['status']
+        return self.get_task_meta(task_id)["status"]
 
     def get_traceback(self, task_id):
         """Get the traceback for a failed task."""
@@ -183,7 +180,7 @@ class BaseDictBackend(BaseBackend):
             return self._cache[task_id]
 
         meta = self._get_task_meta_for(task_id)
-        if cache and meta and meta.get("status") == states.SUCCESS:
+        if cache and meta.get("status") == states.SUCCESS:
             self._cache[task_id] = meta
         return meta
 

+ 2 - 2
celery/backends/database.py

@@ -1,5 +1,6 @@
 from datetime import datetime
 
+from celery import states
 from celery.backends.base import BaseDictBackend
 from celery.db.models import Task, TaskSet
 from celery.db.session import ResultSession
@@ -59,10 +60,9 @@ class DatabaseBackend(BaseDictBackend):
         try:
             task = session.query(Task).filter(Task.task_id == task_id).first()
             if task is None:
-                from celery import states
                 task = Task(task_id)
                 task.status = states.PENDING
-
+                task.result = None
             return task.to_dict()
         finally:
             session.close()