From cbfb2b07b5c0c70f689d7afdf12e05917b757501 Mon Sep 17 00:00:00 2001
From: Jan David Mol <mol@astron.nl>
Date: Thu, 8 Jul 2021 09:24:02 +0200
Subject: [PATCH] TMSS-884: prevent duplicate files to enter the file list
 provided by PULP

---
 SAS/TMSS/backend/src/tmss/tmssapp/adapters/feedback.py | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/adapters/feedback.py b/SAS/TMSS/backend/src/tmss/tmssapp/adapters/feedback.py
index fcd27763034..33d19956337 100644
--- a/SAS/TMSS/backend/src/tmss/tmssapp/adapters/feedback.py
+++ b/SAS/TMSS/backend/src/tmss/tmssapp/adapters/feedback.py
@@ -198,7 +198,8 @@ def pulsar_pipeline_summary_feedback_to_feedback_doc(dp_feedback: dict) -> dict:
 
     feedback_doc = {
         "percentage_written": int(dp_feedback['percentageWritten']),
-        "files": parse_parset_vector(dp_feedback['fileContent'], parameterset.getStringVector),
+        # set of files must be unique, but PULP sends us duplicates 
+        "files": list(set(parse_parset_vector(dp_feedback['fileContent'], parameterset.getStringVector))),
         "target": {
             "coherent": dp_feedback['datatype'] != "SummaryIncoherentStokes"
         }
@@ -223,7 +224,8 @@ def pulsar_pipeline_analysis_feedback_to_feedback_doc(input_dp_feedback_doc: dic
 
     feedback_doc = {
         "percentage_written": int(dp_feedback['percentageWritten']),
-        "files": parse_parset_vector(dp_feedback['fileContent'], parameterset.getStringVector),
+        # set of files must be unique, but PULP sends us duplicates 
+        "files": list(set(parse_parset_vector(dp_feedback['fileContent'], parameterset.getStringVector))),
         "frequency": {
             "subbands": parse_parset_vector(dp_feedback[beam_prefix + 'stationSubbands'], parameterset.getIntVector),
             "central_frequencies": parse_parset_vector(dp_feedback[beam_prefix + 'centralFrequencies'], parameterset.getDoubleVector),
-- 
GitLab