diff --git a/Configuration/AlCa/python/autoAlca.py b/Configuration/AlCa/python/autoAlca.py index ab1eec7399b72..51f166826ffe7 100644 --- a/Configuration/AlCa/python/autoAlca.py +++ b/Configuration/AlCa/python/autoAlca.py @@ -124,3 +124,11 @@ def buildList(pdList, matrix): 'allForPromptCosmics' : buildList(['Cosmics'], AlCaRecoMatrix), 'allForExpressCosmics' : buildList(['ExpressCosmics'], AlCaRecoMatrix) } autoAlca.update(AlCaRecoMatrix) + +# list of AlCa sequences that have modules that do not support concurrent LuminosityBlocks +AlCaNoConcurrentLumis = [ + 'PromptCalibProd', # AlcaBeamSpotProducer + 'PromptCalibProdSiPixelAli', # AlignmentProducerAsAnalyzer, MillePedeFileConverter + 'PromptCalibProdBeamSpotHP', # AlcaBeamSpotProducer + 'PromptCalibProdBeamSpotHPLowPU', # AlcaBeamSpotProducer +] diff --git a/Configuration/Applications/python/ConfigBuilder.py b/Configuration/Applications/python/ConfigBuilder.py index ab050086b91ab..f87fe67ec4ce7 100644 --- a/Configuration/Applications/python/ConfigBuilder.py +++ b/Configuration/Applications/python/ConfigBuilder.py @@ -1275,7 +1275,7 @@ def prepare_ALCA(self, sequence = None, workflow = 'full'): # decide which ALCA paths to use alcaList = sequence.split("+") maxLevel=0 - from Configuration.AlCa.autoAlca import autoAlca + from Configuration.AlCa.autoAlca import autoAlca, AlCaNoConcurrentLumis # support @X from autoAlca.py, and recursion support: i.e T0:@Mu+@EG+... self.expandMapping(alcaList,autoAlca) self.AlCaPaths=[] @@ -1283,6 +1283,10 @@ def prepare_ALCA(self, sequence = None, workflow = 'full'): alcastream = getattr(alcaConfig,name) shortName = name.replace('ALCARECOStream','') if shortName in alcaList and isinstance(alcastream,cms.FilteredStream): + if shortName in AlCaNoConcurrentLumis: + print("Setting numberOfConcurrentLuminosityBlocks=1 because of AlCa sequence {}".format(shortName)) + self._options.nConcurrentLumis = "1" + self._options.nConcurrentIOVs = "1" output = self.addExtraStream(name,alcastream, workflow = workflow) self.executeAndRemember('process.ALCARECOEventContent.outputCommands.extend(process.OutALCARECO'+shortName+'_noDrop.outputCommands)') self.AlCaPaths.append(shortName)