diff --git a/etc/ReplayOfflineConfiguration.py b/etc/ReplayOfflineConfiguration.py index 16240d4c7..9f0ee1aa6 100644 --- a/etc/ReplayOfflineConfiguration.py +++ b/etc/ReplayOfflineConfiguration.py @@ -40,7 +40,7 @@ # 382686 - Collisions, 43.3 pb-1, 23.9583 TB NEW # 386674 Cosmics ~40 minutes in Run2024I with occupancy issues -setInjectRuns(tier0Config, [382686, 386674]) +setInjectRuns(tier0Config, [380128, 382686, 386925]) # Use this in order to limit the number of lumisections to process #setInjectLimit(tier0Config, 10) @@ -68,7 +68,10 @@ # Data type # Processing site (where jobs run) # PhEDEx locations -setAcquisitionEra(tier0Config, "Tier0_REPLAY_2024") +setAcquisitionEra(tier0Config, { "oldEra": "Tier0_REPLAY_2024A", + "newEra": "Tier0_REPLAY_2024B", + "maxRunOldEra": 382686 + }) setBaseRequestPriority(tier0Config, 260000) setBackfill(tier0Config, 1) setBulkDataType(tier0Config, "data") diff --git a/src/python/T0/RunConfig/RunConfigAPI.py b/src/python/T0/RunConfig/RunConfigAPI.py index 33dc57b9d..c0a3c51ca 100644 --- a/src/python/T0/RunConfig/RunConfigAPI.py +++ b/src/python/T0/RunConfig/RunConfigAPI.py @@ -53,6 +53,22 @@ def extractConfigParameter(configParameter, era, run): else: return configParameter +def getAcquisitionEra(tier0Config, run): + """ + _getAcquisitionEra_ + + Determines the acquisition era based on the current run + """ + if isinstance(tier0Config.Global.AcquisitionEra, dict): + if run <= tier0Config.Global.AcquisitionEra['maxRunOldEra']: + acqEra = tier0Config.Global.AcquisitionEra['oldEra'] + else: + acqEra = tier0Config.Global.AcquisitionEra['newEra'] + else: + acqEra = tier0Config.Global.AcquisitionEra + + return acqEra + def configureRun(tier0Config, run, hltConfig, referenceHltConfig = None): """ _configureRun_ @@ -118,8 +134,10 @@ def configureRun(tier0Config, run, hltConfig, referenceHltConfig = None): # Use different acquisition era for emulated data if runInfo['setup_label'] == 'Emulation': bindsUpdateRun['ACQERA'] = tier0Config.Global.EmulationAcquisitionEra + else: - bindsUpdateRun['ACQERA'] = tier0Config.Global.AcquisitionEra + bindsUpdateRun['ACQERA'] = getAcquisitionEra(tier0Config, run) + bindsStream = [] bindsDataset = [] @@ -548,13 +566,13 @@ def configureRunStream(tier0Config, run, stream, specDirectory, dqmUploadProxy): outputs = {} blockCloseDelay = None taskName = None + acqEra = getAcquisitionEra(tier0Config, run) if streamConfig.ProcessingStyle == "Bulk": taskName = "Repack" - if tier0Config.Global.EnableUniqueWorkflowName: workflowName = "Repack_Run%d_Stream%s_%s_ID%d_v%s" % (run, stream, - tier0Config.Global.AcquisitionEra, tier0Config.Global.DeploymentID, streamConfig.Repack.ProcessingVersion) + acqEra, tier0Config.Global.DeploymentID, streamConfig.Repack.ProcessingVersion) else: workflowName = "Repack_Run%d_Stream%s" % (run, stream) @@ -604,7 +622,7 @@ def configureRunStream(tier0Config, run, stream, specDirectory, dqmUploadProxy): if tier0Config.Global.EnableUniqueWorkflowName: workflowName = "Express_Run%d_Stream%s_%s_ID%d_v%s" % (run, stream, - tier0Config.Global.AcquisitionEra, tier0Config.Global.DeploymentID, streamConfig.Express.ProcessingVersion) + acqEra, tier0Config.Global.DeploymentID, streamConfig.Express.ProcessingVersion) else: workflowName = "Express_Run%d_Stream%s" % (run, stream) @@ -825,7 +843,7 @@ def releasePromptReco(tier0Config, specDirectory, dqmUploadProxy): # retrieve phedex configs for run getPhEDExConfigDAO = daoFactory(classname = "RunConfig.GetPhEDExConfig") phedexConfigs = getPhEDExConfigDAO.execute(run, transaction = False) - + for (dataset, fileset, repackProcVer) in recoRelease[run]: bindsReleasePromptReco.append( { 'RUN' : run, @@ -1014,8 +1032,9 @@ def releasePromptReco(tier0Config, specDirectory, dqmUploadProxy): taskName = "Reco" if tier0Config.Global.EnableUniqueWorkflowName: + acqEra = getAcquisitionEra(tier0Config, run) workflowName = "PromptReco_Run%d_%s_%s_ID%d_v%s" % (run, dataset, - tier0Config.Global.AcquisitionEra, tier0Config.Global.DeploymentID, datasetConfig.ProcessingVersion) + acqEra, tier0Config.Global.DeploymentID, datasetConfig.ProcessingVersion) else: workflowName = "PromptReco_Run%d_%s" % (run, dataset)