From 9870cee9372e5aa8fadbc42e88994c97c0ac92d7 Mon Sep 17 00:00:00 2001 From: mmusich Date: Wed, 13 Oct 2021 10:43:37 +0200 Subject: [PATCH 1/2] add onlineBeamSpotESProducer to BeamSpot_cfi: fix general Online BS swap case --- RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py b/RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py index b81712f221e35..6372ffdd6e459 100644 --- a/RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py +++ b/RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py @@ -4,6 +4,11 @@ offlineBeamSpot = cms.EDProducer("BeamSpotProducer") +import RecoVertex.BeamSpotProducer.onlineBeamSpotESProducer_cfi as _mod +BeamSpotESProducer = _mod.onlineBeamSpotESProducer.clone( + timeThreshold = 999999 # for express allow >48h old payloads for replays. DO NOT CHANGE +) + import RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi _onlineBeamSpotProducer = RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi.onlineBeamSpotProducer.clone() mods.offlineToOnlineBeamSpotSwap.toReplaceWith(offlineBeamSpot, _onlineBeamSpotProducer) From d6091aaf0c71a7af8540f4ddccb6c1542278d122 Mon Sep 17 00:00:00 2001 From: mmusich Date: Fri, 15 Oct 2021 09:14:59 +0200 Subject: [PATCH 2/2] load the onlineBeamSpotESProducer only if the modifier is called --- RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py b/RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py index 6372ffdd6e459..582b3cd229cb9 100644 --- a/RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py +++ b/RecoVertex/BeamSpotProducer/python/BeamSpot_cfi.py @@ -4,11 +4,14 @@ offlineBeamSpot = cms.EDProducer("BeamSpotProducer") -import RecoVertex.BeamSpotProducer.onlineBeamSpotESProducer_cfi as _mod -BeamSpotESProducer = _mod.onlineBeamSpotESProducer.clone( - timeThreshold = 999999 # for express allow >48h old payloads for replays. DO NOT CHANGE -) +def _loadOnlineBeamSpotESProduer(process): + import RecoVertex.BeamSpotProducer.onlineBeamSpotESProducer_cfi as _mod + process.BeamSpotESProducer = _mod.onlineBeamSpotESProducer.clone( + timeThreshold = 999999 # for express allow >48h old payloads for replays. DO NOT CHANGE + ) import RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi _onlineBeamSpotProducer = RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi.onlineBeamSpotProducer.clone() mods.offlineToOnlineBeamSpotSwap.toReplaceWith(offlineBeamSpot, _onlineBeamSpotProducer) + +applyOnlineBSESProducer = mods.offlineToOnlineBeamSpotSwap.makeProcessModifier(_loadOnlineBeamSpotESProduer)