Skip to content

Commit 397c97f

Browse files
davidrohrktf
andauthored
DPL: Silence another oldestPossible warning after STOP (#13481)
* DPL: Silence another oldestPossible warning after STOP * Update Framework/Core/src/CommonServices.cxx --------- Co-authored-by: Giulio Eulisse <10544+ktf@users.noreply.github.com>
1 parent c981ee0 commit 397c97f

File tree

1 file changed

+17
-7
lines changed

1 file changed

+17
-7
lines changed

Framework/Core/src/CommonServices.cxx

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -590,7 +590,12 @@ o2::framework::ServiceSpec CommonServices::decongestionSpec()
590590
decongestion->nextTimeslice = std::max(decongestion->nextTimeslice, (int64_t)oldestPossibleOutput.timeslice.value);
591591
O2_SIGNPOST_EVENT_EMIT(data_processor_context, cid, "oldest_possible_timeslice", "Next timeslice %" PRIi64, decongestion->nextTimeslice);
592592
if (oldNextTimeslice != decongestion->nextTimeslice) {
593-
O2_SIGNPOST_EVENT_EMIT_ERROR(data_processor_context, cid, "oldest_possible_timeslice", "Some Lifetime::Timeframe data got dropped starting at %" PRIi64, oldNextTimeslice);
593+
auto& state = ctx.services().get<DeviceState>();
594+
if (state.transitionHandling != TransitionHandlingState::NoTransition && DefaultsHelpers::onlineDeploymentMode()) {
595+
O2_SIGNPOST_EVENT_EMIT_WARN(data_processor_context, cid, "oldest_possible_timeslice", "Stop transition requested. Some Lifetime::Timeframe data got dropped starting at %" PRIi64, oldNextTimeslice);
596+
} else {
597+
O2_SIGNPOST_EVENT_EMIT_ERROR(data_processor_context, cid, "oldest_possible_timeslice", "Some Lifetime::Timeframe data got dropped starting at %" PRIi64, oldNextTimeslice);
598+
}
594599
timesliceIndex.rescan();
595600
}
596601
}
@@ -644,8 +649,9 @@ o2::framework::ServiceSpec CommonServices::decongestionSpec()
644649
oldestPossibleOutput.timeslice.value, decongestion.lastTimeslice);
645650
return;
646651
}
647-
auto &queue = services.get<AsyncQueue>();
648-
auto& spec = services.get<DeviceSpec const>();
652+
auto& queue = services.get<AsyncQueue>();
653+
const auto& spec = services.get<DeviceSpec const>();
654+
const auto& state = services.get<DeviceState>();
649655
auto *device = services.get<RawDeviceService>().device();
650656
/// We use the oldest possible timeslice to debounce, so that only the latest one
651657
/// at the end of one iteration is sent.
@@ -683,16 +689,20 @@ o2::framework::ServiceSpec CommonServices::decongestionSpec()
683689
TimesliceId{oldestPossibleTimeslice}, -1);
684690
if (decongestion.orderedCompletionPolicyActive) {
685691
AsyncQueueHelpers::post(
686-
queue, decongestion.oldestPossibleTimesliceTask, [ref = services, oldestPossibleOutput, &decongestion, &proxy, &spec, device, &timesliceIndex](size_t id) {
692+
queue, decongestion.oldestPossibleTimesliceTask, [ref = services, oldestPossibleOutput, &decongestion, &proxy, &spec, &state, device, &timesliceIndex](size_t id) {
687693
O2_SIGNPOST_ID_GENERATE(cid, async_queue);
688694
int64_t oldNextTimeslice = decongestion.nextTimeslice;
689695
decongestion.nextTimeslice = std::max(decongestion.nextTimeslice, (int64_t)oldestPossibleOutput.timeslice.value);
690696
if (oldNextTimeslice != decongestion.nextTimeslice) {
691-
O2_SIGNPOST_EVENT_EMIT_ERROR(async_queue, cid, "oldest_possible_timeslice", "Some Lifetime::Timeframe data got dropped starting at %" PRIi64, oldNextTimeslice);
697+
if (state.transitionHandling != TransitionHandlingState::NoTransition && DefaultsHelpers::onlineDeploymentMode()) {
698+
O2_SIGNPOST_EVENT_EMIT_WARN(async_queue, cid, "oldest_possible_timeslice", "Stop transition requested. Some Lifetime::Timeframe data got dropped starting at %" PRIi64, oldNextTimeslice);
699+
} else {
700+
O2_SIGNPOST_EVENT_EMIT_ERROR(async_queue, cid, "oldest_possible_timeslice", "Some Lifetime::Timeframe data got dropped starting at %" PRIi64, oldNextTimeslice);
701+
}
692702
timesliceIndex.rescan();
693703
}
694-
},
695-
TimesliceId{oldestPossibleOutput.timeslice.value}, -1);
704+
},
705+
TimesliceId{oldestPossibleOutput.timeslice.value}, -1);
696706
} },
697707
.kind = ServiceKind::Serial};
698708
}

0 commit comments

Comments
 (0)