From 4f5052d3eb460a6046c25e0e31535cc3711f0df2 Mon Sep 17 00:00:00 2001 From: Administrator <> Date: Thu, 13 Nov 2025 11:13:57 +0900 Subject: [PATCH 1/2] hotfix for preventing duplicated flag codes --- viewer/pages/qc.py | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/viewer/pages/qc.py b/viewer/pages/qc.py index 66b89a0f5..036504f7b 100644 --- a/viewer/pages/qc.py +++ b/viewer/pages/qc.py @@ -2725,10 +2725,17 @@ def select_test(): if t.get("testType") == "E_SUMMARY" and t.get("selected") ] if len(e_tests) > 0: - e_test_result = e_tests[0].get("results") - if e_test_result.get("MODULE_DISABLED_COLUMNS_NUMBER") > 0: - page_docs["module_flags_on"] += ["INFO_CORE_COLUMN"] - is_all_good = False + logger.debug(pprint.pformat(e_tests)) + e_test_result = e_tests[0].get("results", {}) + try: + if ( + e_test_result.get("MODULE_DISABLED_COLUMNS_NUMBER", -1) > 0 + and "INFO_CORE_COLUMN" not in page_docs["module_flags_on"] + ): + page_docs["module_flags_on"] += ["INFO_CORE_COLUMN"] + is_all_good = False + except Exception as e: + logger.warning(str(e)) # triplet or not is_triplet = any( @@ -2943,10 +2950,15 @@ def select_test(): msg = f"status of changing component stages recursively: {changed_components}" logger.info(msg) + flag_result = [] + for item in page_docs["module_flags_on"]: + if item not in flag_result: + flag_result.append(item) + # Set module flags localdb.component.update_one( {"_id": thisComponent.get("_id")}, - {"$set": {"flags": page_docs["module_flags_on"]}}, + {"$set": {"flags": flag_result}}, ) # Comment treatment -- GitLab From 2803d8d945b1c93a0fd76e70edffcba501263512 Mon Sep 17 00:00:00 2001 From: Administrator <> Date: Thu, 13 Nov 2025 11:14:31 +0900 Subject: [PATCH 2/2] protection against exception in flag registration --- .../functions/itkpd_interface/recursiveUploader.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/viewer/functions/itkpd_interface/recursiveUploader.py b/viewer/functions/itkpd_interface/recursiveUploader.py index a07b8c935..546aaf873 100755 --- a/viewer/functions/itkpd_interface/recursiveUploader.py +++ b/viewer/functions/itkpd_interface/recursiveUploader.py @@ -9,6 +9,7 @@ import os import pprint import shutil import sys +import time import traceback import zipfile from pathlib import Path @@ -1022,12 +1023,17 @@ class RecursiveUploader(PDInterface.PDInterface): "deleteComponentFlag", json={"component": parent["proID"], "flag": flag.get("code")}, ) + time.sleep(3) for flag in parent.get("flags"): - self.pd_client.post( - "addComponentFlag", - json={"component": parent["proID"], "flag": flag}, - ) + try: + self.pd_client.post( + "addComponentFlag", + json={"component": parent["proID"], "flag": flag}, + ) + except Exception: + contextlib.suppress(Exception) + time.sleep(3) msg = f"processed {parent['name']} ({parent['componentType']})" logger.info(msg) -- GitLab