From d9a8b471ef0b5f20c91dbd53f5cbdb29042d246c Mon Sep 17 00:00:00 2001 From: Autumn McKee Date: Tue, 13 Oct 2026 10:24:06 +0200 Subject: [PATCH] DPL Analysis: keep reading after a skipped timeframe Returning after a skip leaked the callback's timeslice offer, which eventually starved the reader. --- Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx index e101288bf5b83..d11b171f9dcc7 100644 --- a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx +++ b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx @@ -410,7 +410,12 @@ AlgorithmSpec AODJAlienReaderHelpers::rootFileReaderCallback(ConfigContext const transitionTo(TFReaderState::READ_FIRST_TABLE_FROM_NEXT_FILE); break; case TFReaderState::INVALID_TIMEFRAME: - return; + // Returning would leak this callback's timeslice offer, so read the next timeframe. + messageContext.clear(); + ++ntf; + routeIndex = 0; + transitionTo(TFReaderState::READ_FIRST_TABLE); + break; case TFReaderState::TIMEFRAME_READ: break; }