Explorar el Código

Also remove tref when time limit exceeded

Ask Solem hace 12 años
padre
commit
cba04710f6
Se han modificado 1 ficheros con 7 adiciones y 0 borrados
  1. 7 0
      celery/concurrency/processes.py

+ 7 - 0
celery/concurrency/processes.py

@@ -531,6 +531,10 @@ class TaskPool(BasePool):
             pass  # job ready
         else:
             self.on_soft_timeout(result)
+        finally:
+            if not hard:
+                # remove tref
+                self._pool.on_timeout_cancel(job)
 
     def _on_hard_timeout(self, job):
         try:
@@ -539,6 +543,9 @@ class TaskPool(BasePool):
             pass  # job ready
         else:
             self.on_hard_timeout(result)
+        finally:
+            # remove tref
+            self._pool.on_timeout_cancel(job)
 
     def _create_timelimit_handlers(self, hub, now=time):
         apply_after = hub.timer.apply_after