def initCondDBSource( process, inputDBConnect = 'frontier://FrontierProd/CMS_COND_31X_L1T', inputDBAuth = '.', tagBase = "", tagBaseVec = [], includeAllTags = False, includeRSTags = False, use30XTagList = False, applyESPrefer = True ): import FWCore.ParameterSet.Config as cms from CondCore.DBCommon.CondDBSetup_cfi import CondDBSetup from CondTools.L1Trigger.L1CondEnum_cfi import L1CondEnum if len( tagBaseVec ) == 0: if len( tagBase ) != 0: from CondTools.L1Trigger.L1UniformTags_cfi import initL1UniformTags initL1UniformTags( tagBase ) tagBaseVec = initL1UniformTags.tagBaseVec else: from CondTools.L1Trigger.L1O2OTags_cfi import initL1O2OTags initL1O2OTags() tagBaseVec = initL1O2OTags.tagBaseVec process.l1conddb = cms.ESSource("PoolDBESSource", CondDBSetup, connect = cms.string(inputDBConnect), toGet = cms.VPSet(cms.PSet( record = cms.string('L1TriggerKeyListRcd'), tag = cms.string('L1TriggerKeyList_' + tagBaseVec[ L1CondEnum.L1TriggerKeyList ]) ), cms.PSet( record = cms.string('L1TriggerKeyRcd'), tag = cms.string('L1TriggerKey_' + tagBaseVec[ L1CondEnum.L1TriggerKey ]) )) ) process.l1conddb.DBParameters.authenticationPath = inputDBAuth # The more records, the longer it takes PoolDBESSource to initialize, so be # selective if possible. if includeAllTags == True: if use30XTagList == True: from CondTools.L1Trigger.L1SubsystemParams30X_cfi import initL1Subsystems else: from CondTools.L1Trigger.L1SubsystemParams_cfi import initL1Subsystems initL1Subsystems( tagBaseVec = tagBaseVec ) process.l1conddb.toGet.extend(initL1Subsystems.params.recordInfo) elif includeRSTags == True: from CondTools.L1Trigger.L1RSSubsystemParams_cfi import initL1RSSubsystems initL1RSSubsystems( tagBaseVec = tagBaseVec ) process.l1conddb.toGet.extend(initL1RSSubsystems.params.recordInfo) if applyESPrefer == True: process.es_prefer_l1conddb = cms.ESPrefer("PoolDBESSource","l1conddb")
def initCondDBSource(process, inputDBConnect='frontier://FrontierProd/CMS_COND_31X_L1T', inputDBAuth='.', tagBase="", tagBaseVec=[], includeAllTags=False, includeRSTags=False, use30XTagList=False, applyESPrefer=True): import FWCore.ParameterSet.Config as cms from CondCore.DBCommon.CondDBSetup_cfi import CondDBSetup from CondTools.L1Trigger.L1CondEnum_cfi import L1CondEnum if len(tagBaseVec) == 0: if len(tagBase) != 0: from CondTools.L1Trigger.L1UniformTags_cfi import initL1UniformTags initL1UniformTags(tagBase) tagBaseVec = initL1UniformTags.tagBaseVec else: from CondTools.L1Trigger.L1O2OTags_cfi import initL1O2OTags initL1O2OTags() tagBaseVec = initL1O2OTags.tagBaseVec process.l1conddb = cms.ESSource( "PoolDBESSource", CondDBSetup, connect=cms.string(inputDBConnect), toGet=cms.VPSet( cms.PSet(record=cms.string('L1TriggerKeyListRcd'), tag=cms.string('L1TriggerKeyList_' + tagBaseVec[L1CondEnum.L1TriggerKeyList])), cms.PSet(record=cms.string('L1TriggerKeyRcd'), tag=cms.string('L1TriggerKey_' + tagBaseVec[L1CondEnum.L1TriggerKey])))) process.l1conddb.DBParameters.authenticationPath = inputDBAuth # The more records, the longer it takes PoolDBESSource to initialize, so be # selective if possible. if includeAllTags == True: if use30XTagList == True: from CondTools.L1Trigger.L1SubsystemParams30X_cfi import initL1Subsystems else: from CondTools.L1Trigger.L1SubsystemParams_cfi import initL1Subsystems initL1Subsystems(tagBaseVec=tagBaseVec) process.l1conddb.toGet.extend(initL1Subsystems.params.recordInfo) elif includeRSTags == True: from CondTools.L1Trigger.L1RSSubsystemParams_cfi import initL1RSSubsystems initL1RSSubsystems(tagBaseVec=tagBaseVec) process.l1conddb.toGet.extend(initL1RSSubsystems.params.recordInfo) if applyESPrefer == True: process.es_prefer_l1conddb = cms.ESPrefer("PoolDBESSource", "l1conddb")
VarParsing.VarParsing.varType.string, "Connection string for output DB") options.register('outputDBAuth', '.', #default value VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.string, "Authentication path for output DB") options.parseArguments() # Generate dummy L1TriggerKey and L1TriggerKeyList process.load("CondTools.L1Trigger.L1TriggerKeyDummy_cff") # Define CondDB tags from CondTools.L1Trigger.L1CondEnum_cfi import L1CondEnum from CondTools.L1Trigger.L1O2OTags_cfi import initL1O2OTags initL1O2OTags() # Input DB from CondTools.L1Trigger.L1CondDBSource_cff import initCondDBSource initCondDBSource( process, inputDBConnect = options.inputDBConnect, inputDBAuth = options.inputDBAuth, tagBaseVec = initL1O2OTags.tagBaseVec, includeAllTags = True, applyESPrefer = False ) # writer modules from CondTools.L1Trigger.L1CondDBPayloadWriter_cff import initPayloadWriter initPayloadWriter( process, outputDBConnect = options.outputDBConnect, outputDBAuth = options.outputDBAuth,
options.register('outputDBAuth', '.', #default value VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.string, "Authentication path for output DB") options.register('logTransactions', 1, #default value VarParsing.VarParsing.multiplicity.singleton, VarParsing.VarParsing.varType.int, "Record transactions in log DB") options.parseArguments() # Define CondDB tags from CondTools.L1Trigger.L1CondEnum_cfi import L1CondEnum from CondTools.L1Trigger.L1O2OTags_cfi import initL1O2OTags initL1O2OTags() # writer modules from CondTools.L1Trigger.L1CondDBIOVWriter_cff import initIOVWriter initIOVWriter( process, outputDBConnect = options.outputDBConnect, outputDBAuth = options.outputDBAuth, tagBaseVec = initL1O2OTags.tagBaseVec, tscKey = options.tscKey ) if options.logTransactions == 1: initIOVWriter.outputDB.logconnect = cms.untracked.string('oracle://cms_orcon_prod/CMS_COND_31X_POPCONLOG') process.L1CondDBIOVWriter.logTransactions = True process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(1)