From 0ec0f7dc67f60f229910ea15c265886b6fc66a50 Mon Sep 17 00:00:00 2001
From: Thomas Kluyver <thomas@kluyver.me.uk>
Date: Fri, 26 Feb 2021 16:44:11 +0000
Subject: [PATCH] Fix updating mdc when different types of jobs are underway

---
 webservice/webservice.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/webservice/webservice.py b/webservice/webservice.py
index e67d525b6..53bf30710 100644
--- a/webservice/webservice.py
+++ b/webservice/webservice.py
@@ -348,7 +348,7 @@ async def update_job_db(config):
                 rid, jobid, proposal, run, status, time, _, action = r
                 logging.debug("DB info {}".format(r))
 
-                cflg, cstatus = combined.get(rid, ([], []))
+                cflg, cstatus = combined.get((rid, action), ([], []))
                 if jobid in statii:
                     slstatus, runtime = statii[jobid]
                     query = "UPDATE jobs SET status=?, time=? WHERE jobid LIKE ?"
@@ -366,15 +366,15 @@ async def update_job_db(config):
                     else:
                         cflg.append("NA")
                     cstatus.append(slstatus)
-                combined[rid] = cflg, cstatus
+                combined[rid, action] = cflg, cstatus
             conn.commit()
 
             flg_order = {"R": 2, "A": 1, "NA": 0}
             dark_flags = {'NA': 'E', 'R': 'IP', 'A': 'F'}
-            for rid, value in combined.items():
+            for rid, action in combined:
                 if int(rid) == 0:  # this job was not submitted from MyMDC
                     continue
-                flgs, statii = value
+                flgs, statii = combined[rid, action]
                 # sort by least done status
                 flg = max(flgs, key=lambda i: flg_order[i])
                 msg = "\n".join(statii)
-- 
GitLab