From 83a2ea56312680de0bc6e316c23261611b6edbc4 Mon Sep 17 00:00:00 2001
From: Jorrit Schaap <schaap@astron.nl>
Date: Thu, 16 Feb 2017 15:18:59 +0000
Subject: [PATCH] Task #10339: apparently people change the status of
 (pre)scheduled/queued tasks in mom back to openend, so we should check these
 too and remove them if status=^Cenend in mom.

---
 .../ResourceAssigner/lib/schedulechecker.py            | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/SAS/ResourceAssignment/ResourceAssigner/lib/schedulechecker.py b/SAS/ResourceAssignment/ResourceAssigner/lib/schedulechecker.py
index 5dc46054353..d73e93df788 100644
--- a/SAS/ResourceAssignment/ResourceAssigner/lib/schedulechecker.py
+++ b/SAS/ResourceAssignment/ResourceAssigner/lib/schedulechecker.py
@@ -167,14 +167,14 @@ class ScheduleChecker():
         except Exception as e:
             logger.error("Error while checking scheduled pipelines: %s", e)
 
-    def checkApprovedTasks(self):
+    def checkUnRunTasksForMoMOpenedStatus(self):
         try:
             logger.info('checking approved tasks for status in mom')
-            approved_tasks = self._radbrpc.getTasks(task_status='approved')
-            mom_ids = [t['mom_id'] for t in approved_tasks]
+            unrun_tasks = self._radbrpc.getTasks(task_status=['approved', 'scheduled', 'prescheduled', 'queued'])
+            mom_ids = [t['mom_id'] for t in unrun_tasks]
             mom_details = self._momrpc.getProjectDetails(mom_ids)
 
-            for task in approved_tasks:
+            for task in unrun_tasks:
                 mom_id = int(task['mom_id'])
                 if (mom_id not in mom_details or
                     mom_details[mom_id]['object_status'] == 'opened'):
@@ -200,7 +200,7 @@ class ScheduleChecker():
         while self._running:
             self.checkRunningPipelines()
             self.checkScheduledAndQueuedPipelines()
-            self.checkApprovedTasks()
+            self.checkUnRunTasksForMoMOpenedStatus()
 
             for i in range(PIPELINE_CHECK_INTERVAL):
                 sleep(1)
-- 
GitLab