diff --git a/Detectors/ITSMFT/ITS/tracking/src/TrackingInterface.cxx b/Detectors/ITSMFT/ITS/tracking/src/TrackingInterface.cxx index fcd9024a74709..fa3339b001ca3 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/TrackingInterface.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/TrackingInterface.cxx @@ -160,6 +160,11 @@ void ITSTrackingInterface::run(framework::ProcessingContext& pc) auto& allVerticesLabels = mIsMC ? pc.outputs().make>(Output{"ITS", "VERTICESMCTR", 0}) : dummyMCLabVerts; auto& allVerticesPurities = mIsMC ? pc.outputs().make>(Output{"ITS", "VERTICESMCPUR", 0}) : dummyMCPurVerts; + if (!hasClusters) { + // skip processing if no data is received entirely but still create empty output so consumers do not wait + return; + } + if (mOverrideBeamEstimation) { mTimeFrame->setBeamPosition(mMeanVertex->getX(), mMeanVertex->getY(),