Fixing bug in ec release
authorAlina Quereilhac <alina.quereilhac@inria.fr>
Sat, 19 Apr 2014 19:42:27 +0000 (21:42 +0200)
committerAlina Quereilhac <alina.quereilhac@inria.fr>
Sat, 19 Apr 2014 19:42:27 +0000 (21:42 +0200)
src/nepi/execution/ec.py

index 94784b2..776881c 100644 (file)
@@ -875,12 +875,6 @@ class ExperimentController(object):
         if not guids:
             guids = self.resources
 
-        # Remove all pending tasks from the scheduler queue
-        for tid in list(self._scheduler.pending):
-            self._scheduler.remove(tid)
-
-        self._runner.empty()
-
         for guid in guids:
             rm = self.get_resource(guid)
             self.schedule("0s", rm.release)
@@ -899,6 +893,13 @@ class ExperimentController(object):
         if self._state == ECState.FAILED:
             raise RuntimeError("EC failure. Can not exit gracefully")
 
+        # Remove all pending tasks from the scheduler queue
+        for tid in list(self._scheduler.pending):
+            self._scheduler.remove(tid)
+
+        # Remove pending tasks from the workers queue
+        self._runner.empty()
+
         self.release()
 
         # Mark the EC state as TERMINATED