Browse Source

Remove loader.on_task_return, replace with loader.on_process_cleanup

Ask Solem 15 years ago
parent
commit
7beab9c665
3 changed files with 2 additions and 8 deletions
  1. 1 1
      celery/loaders/base.py
  2. 0 3
      celery/tests/test_worker_job.py
  3. 1 4
      celery/worker/job.py

+ 1 - 1
celery/loaders/base.py

@@ -28,7 +28,7 @@ class BaseLoader(object):
         """This method is called before a task is executed."""
         pass
 
-    def on_task_return(self, task_id, task, status, retval):
+    def on_process_cleanup(self):
         """This method is called after a task is executed."""
         pass
 

+ 0 - 3
celery/tests/test_worker_job.py

@@ -175,10 +175,7 @@ class test_TaskRequest(unittest.TestCase):
 
     def test_execute_acks_late(self):
         mytask_raising.acks_late = True
-        tw = TaskRequest(mytask_raising.name, gen_unique_id(), [1], {"f": "x"})
         try:
-            tw.execute()
-            self.assertTrue(tw.acknowledged)
         finally:
             mytask_raising.acks_late = False
 

+ 1 - 4
celery/worker/job.py

@@ -100,6 +100,7 @@ class WorkerTaskTrace(TaskTrace):
             return super(WorkerTaskTrace, self).execute()
         finally:
             self.task.backend.process_cleanup()
+            self.loader.on_process_cleanup()
 
     def handle_success(self, retval, *args):
         """Handle successful execution."""
@@ -107,10 +108,6 @@ class WorkerTaskTrace(TaskTrace):
             self.task.backend.mark_as_done(self.task_id, retval)
         return self.super.handle_success(retval, *args)
 
-    def handle_after_return(self, status, retval, type_, tb, strtb):
-        self.loader.on_task_return(self.task_id, self.task, status, retval)
-        self.super.handle_after_return(status, retval, type_, tb, strtb)
-
     def handle_retry(self, exc, type_, tb, strtb):
         """Handle retry exception."""
         message, orig_exc = exc.args