From 15662b97eb39a6f3618b71889ee0183eaf77d1b8 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Thu, 10 Apr 2025 15:35:51 +0200 Subject: [PATCH 1/2] DPL: exclude tfCounter == 0 messages for EOS --- Framework/Core/src/ExternalFairMQDeviceProxy.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Framework/Core/src/ExternalFairMQDeviceProxy.cxx b/Framework/Core/src/ExternalFairMQDeviceProxy.cxx index e67e484f7faf5..3b4e4b1ba6ccb 100644 --- a/Framework/Core/src/ExternalFairMQDeviceProxy.cxx +++ b/Framework/Core/src/ExternalFairMQDeviceProxy.cxx @@ -534,7 +534,7 @@ InjectorFunction dplModelAdaptor(std::vector const& filterSpecs, DPL timingInfo.runNumber = dh->runNumber; timingInfo.tfCounter = dh->tfCounter; LOG(debug) << msgidx << ": " << DataSpecUtils::describe(OutputSpec{dh->dataOrigin, dh->dataDescription, dh->subSpecification}) << " part " << dh->splitPayloadIndex << " of " << dh->splitPayloadParts << " payload " << parts.At(msgidx + 1)->GetSize(); - if (dh->runNumber == 0 || (dh->tfCounter == 0 && o2::header::get(header) == nullptr) || (fmqRunNumber > 0 && fmqRunNumber != dh->runNumber)) { + if (dh->runNumber == 0 || (dh->tfCounter == 0 && dh->dataDescription.as() == "EOS") || (fmqRunNumber > 0 && fmqRunNumber != dh->runNumber)) { LOG(error) << "INVALID runNumber / tfCounter: runNumber " << dh->runNumber << ", tfCounter " << dh->tfCounter << ", FMQ runNumber " << fmqRunNumber << " for msgidx " << msgidx << ": " << DataSpecUtils::describe(OutputSpec{dh->dataOrigin, dh->dataDescription, dh->subSpecification}) << " part " << dh->splitPayloadIndex << " of " << dh->splitPayloadParts << " payload " << parts.At(msgidx + 1)->GetSize(); From d7d0c41c8a47422d8b4bad979b6b8877dd40e647 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Thu, 10 Apr 2025 20:43:25 +0200 Subject: [PATCH 2/2] Update ExternalFairMQDeviceProxy.cxx --- Framework/Core/src/ExternalFairMQDeviceProxy.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Framework/Core/src/ExternalFairMQDeviceProxy.cxx b/Framework/Core/src/ExternalFairMQDeviceProxy.cxx index 3b4e4b1ba6ccb..cfc445725a92d 100644 --- a/Framework/Core/src/ExternalFairMQDeviceProxy.cxx +++ b/Framework/Core/src/ExternalFairMQDeviceProxy.cxx @@ -534,7 +534,7 @@ InjectorFunction dplModelAdaptor(std::vector const& filterSpecs, DPL timingInfo.runNumber = dh->runNumber; timingInfo.tfCounter = dh->tfCounter; LOG(debug) << msgidx << ": " << DataSpecUtils::describe(OutputSpec{dh->dataOrigin, dh->dataDescription, dh->subSpecification}) << " part " << dh->splitPayloadIndex << " of " << dh->splitPayloadParts << " payload " << parts.At(msgidx + 1)->GetSize(); - if (dh->runNumber == 0 || (dh->tfCounter == 0 && dh->dataDescription.as() == "EOS") || (fmqRunNumber > 0 && fmqRunNumber != dh->runNumber)) { + if (dh->runNumber == 0 || (dh->tfCounter == 0 && dh->dataDescription.as() != "EOS") || (fmqRunNumber > 0 && fmqRunNumber != dh->runNumber)) { LOG(error) << "INVALID runNumber / tfCounter: runNumber " << dh->runNumber << ", tfCounter " << dh->tfCounter << ", FMQ runNumber " << fmqRunNumber << " for msgidx " << msgidx << ": " << DataSpecUtils::describe(OutputSpec{dh->dataOrigin, dh->dataDescription, dh->subSpecification}) << " part " << dh->splitPayloadIndex << " of " << dh->splitPayloadParts << " payload " << parts.At(msgidx + 1)->GetSize();