From aac66d2cf62bca9ee1f1128ffe56f0ab41ce9e41 Mon Sep 17 00:00:00 2001
From: P-A Loizeau <p.-a.loizeau@gsi.de>
Date: Tue, 25 Oct 2022 15:58:15 +0200
Subject: [PATCH] Reduce warning printout in mcbm chk time algo due to too big
 CI logs

---
 fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.cxx | 8 +++++++-
 fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.h   | 1 +
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.cxx b/fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.cxx
index 67dca4b8b3..bdf45e8fef 100644
--- a/fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.cxx
+++ b/fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.cxx
@@ -182,6 +182,8 @@ void CbmMcbmCheckTimingAlgo::ProcessTs()
   LOG(info) << "executing TS " << fuNbTs << " index ["
             << (fCbmTsEventHeader != nullptr ? fCbmTsEventHeader->GetTsIndex() : -1) << "]";
 
+  fuNbTrdCondWarn = 0;
+
   switch (fRefDet.detId) {
     case ECbmModuleId::kSts: {
       CheckInterSystemOffset<CbmStsDigi>();
@@ -467,7 +469,11 @@ bool CbmMcbmCheckTimingAlgo::CheckCondition(CheckTimingDetector* det, UInt_t uCo
     if (digi->GetAddressModule() != moduleId) return false;
   }
   catch (const std::invalid_argument& ia) {
-    LOG(warning) << "Trd condition " << det->vName[uCond] << " not implemented. Skipped";
+    if (fuNbTrdCondWarn < 10) {
+      LOG(warning) << "Trd condition for index " << uCond << " name " << det->vName[uCond]
+                   << " not implemented. Skipped";
+      ++fuNbTrdCondWarn;
+    }
     return false;
   }
   return true;
diff --git a/fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.h b/fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.h
index 7acc01170d..b4f4bc6f4c 100644
--- a/fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.h
+++ b/fles/mcbm2018/tasks/CbmMcbmCheckTimingAlgo.h
@@ -129,6 +129,7 @@ private:
 
   //
   UInt_t fuNbTs = 0;
+  UInt_t fuNbTrdCondWarn = 0;
 
   CheckTimingDetector fRefDet {CheckTimingDetector(ECbmModuleId::kT0, "T0")};
   std::vector<CheckTimingDetector> fvDets {
-- 
GitLab