CMS 3D CMS Logo

Functions | Variables

revisionDML Namespace Reference

Functions

def addEntry
def addRevision
def addRunToCurrentDataTag
def alldataTags
def bookNewEntry
def bookNewRevision
def branchInfoByName
def branchType
def createBranch
def createDataTag
 Data Tagging API.
def currentDataTag
def dataIdsByCurrentTag
def dataIdsByTagId
def dataIdsByTagName
def dataRevisionsOfEntry
def dataTagInfo
def entryInBranch
def latestDataRevisionOfEntry
def revisionsInBranch
def revisionsInBranchName
def revisionsInTag

Variables

tuple databranchinfo = (branchid,'DATA')
tuple datainfo = createBranch(schema,'DATA','TRUNK',comment='hold data')
tuple entryinfo = (revision_id,entry_id,str(runnum),data_id)
tuple hltentryid = entryInBranch(schema,nameDealer.hltdataTableName(),str(runnum),'DATA')
tuple latestrevision = latestDataRevisionOfEntry(schema,nameDealer.lumidataTableName(),lumientry_id,revlist)
tuple lumientry_id = entryInBranch(schema,nameDealer.lumidataTableName(),'1211','DATA')
tuple lumientryid = entryInBranch(schema,nameDealer.lumidataTableName(),str(runnum),'DATA')
string myconstr = 'sqlite_file:test.db'
tuple norminfo = createBranch(schema,'NORM','TRUNK',comment='hold normalization factor')
tuple revisioninfo = bookNewRevision( schema,nameDealer.lumidataTableName() )
tuple revlist = revisionsInBranchName(schema,'DATA')
tuple schema = session.nominalSchema()
tuple session = svc.openSession(isReadOnly=False,cpp2sqltype=[('unsigned int','NUMBER(10)'),('unsigned long long','NUMBER(20)')])
tuple svc = sessionManager.sessionManager(myconstr,debugON=False)
tuple tables = lumidbDDL.createTables(schema)
tuple trgentryid = entryInBranch(schema,nameDealer.trgdataTableName(),str(runnum),'DATA')
tuple trunkinfo = createBranch(schema,'TRUNK',None,comment='main')

Function Documentation

def revisionDML::addEntry (   schema,
  datatableName,
  entryinfo,
  branchinfo 
)
input:
    entryinfo (revision_id(0),entry_id(1),entry_name(2),data_id(3))
    branchinfo (branch_id,branch_name)
1.allocate and insert a new revision into the revisions table
2.allocate and insert a new entry into the entry table with the new revision
3.inset into data_rev table with new data_id ,revision)id mapping

insert into revisions(revision_id,branch_id,branch_name,comment,ctime) values()
insert into datatablename_entries (entry_id,revision_id) values()
insert into datatablename_rev(data_id,revision_id) values()

Definition at line 342 of file revisionDML.py.

Referenced by CalibrationInterface< CategoryT, CalibDataT >::addCategoryDefinition(), TAPD::addEntry(), TMom::addEntry(), EcalMatacqAnalyzer::endJob(), and AlgorithmCalibration< T, CO >::readCategories().

00343                                                        :
00344     '''
00345     input:
00346         entryinfo (revision_id(0),entry_id(1),entry_name(2),data_id(3))
00347         branchinfo (branch_id,branch_name)
00348     1.allocate and insert a new revision into the revisions table
00349     2.allocate and insert a new entry into the entry table with the new revision
00350     3.inset into data_rev table with new data_id ,revision)id mapping
00351     
00352     insert into revisions(revision_id,branch_id,branch_name,comment,ctime) values()
00353     insert into datatablename_entries (entry_id,revision_id) values()
00354     insert into datatablename_rev(data_id,revision_id) values()
00355     '''
00356     try:
00357         revisiontableName=nameDealer.revisionTableName()
00358         entrytableName=nameDealer.entryTableName(datatableName)
00359         revtableName=nameDealer.revmapTableName(datatableName)
00360         
00361         db=dbUtil.dbUtil(schema)
00362         tabrowDefDict={}
00363         tabrowDefDict['REVISION_ID']='unsigned long long'
00364         tabrowDefDict['BRANCH_ID']='unsigned long long'
00365         tabrowDefDict['BRANCH_NAME']='string'
00366         tabrowDefDict['CTIME']='time stamp'
00367         tabrowValueDict={}
00368         tabrowValueDict['REVISION_ID']=entryinfo[0]
00369         tabrowValueDict['BRANCH_ID']=branchinfo[0]
00370         tabrowValueDict['BRANCH_NAME']=branchinfo[1]
00371         tabrowValueDict['CTIME']=coral.TimeStamp()
00372         db.insertOneRow(revisiontableName,tabrowDefDict,tabrowValueDict)
00373         
00374         tabrowDefDict={}
00375         tabrowDefDict['REVISION_ID']='unsigned long long'
00376         tabrowDefDict['ENTRY_ID']='unsigned long long'    
00377         tabrowDefDict['NAME']='string'
00378         
00379         tabrowValueDict={}
00380         tabrowValueDict['REVISION_ID']=entryinfo[0]
00381         tabrowValueDict['ENTRY_ID']=entryinfo[1]
00382         tabrowValueDict['NAME']=entryinfo[2]
00383         db.insertOneRow(entrytableName,tabrowDefDict,tabrowValueDict)
00384     
00385         tabrowDefDict={}
00386         tabrowDefDict['REVISION_ID']='unsigned long long'
00387         tabrowDefDict['DATA_ID']='unsigned long long'
00388         tabrowValueDict={}
00389         tabrowValueDict['REVISION_ID']=entryinfo[0]
00390         tabrowValueDict['DATA_ID']=entryinfo[3]
00391         db.insertOneRow(revtableName,tabrowDefDict,tabrowValueDict)
00392     except:
00393         raise
    
def revisionDML::addRevision (   schema,
  datatableName,
  revisioninfo,
  branchinfo 
)
1.insert a new revision into the revisions table
2.insert into data_id, revision_id pair to  datatable_revmap
insert into revisions(revision_id,branch_id,branch_name,ctime) values()
insert into datatable_rev(data_id,revision_id) values())
input:
     revisioninfo (revision_id(0),data_id(1))
     branchinfo  (branch_id(0),branch_name(1))

Definition at line 394 of file revisionDML.py.

00395                                                              :
00396     '''
00397     1.insert a new revision into the revisions table
00398     2.insert into data_id, revision_id pair to  datatable_revmap
00399     insert into revisions(revision_id,branch_id,branch_name,ctime) values()
00400     insert into datatable_rev(data_id,revision_id) values())
00401     input:
00402          revisioninfo (revision_id(0),data_id(1))
00403          branchinfo  (branch_id(0),branch_name(1))
00404     '''
00405     try:
00406         revisiontableName=nameDealer.revisionTableName()
00407         revtableName=nameDealer.revmapTableName(datatableName)
00408         
00409         db=dbUtil.dbUtil(schema)
00410         tabrowDefDict={}
00411         tabrowDefDict['REVISION_ID']='unsigned long long'
00412         tabrowDefDict['BRANCH_ID']='unsigned long long'
00413         tabrowDefDict['BRANCH_NAME']='string'
00414         tabrowDefDict['CTIME']='time stamp'
00415 
00416         tabrowValueDict={}
00417         tabrowValueDict['REVISION_ID']=revisioninfo[0]
00418         tabrowValueDict['BRANCH_ID']=branchinfo[0]
00419         tabrowValueDict['BRANCH_NAME']=branchinfo[1]
00420         tabrowValueDict['CTIME']=coral.TimeStamp()
00421         
00422         db.insertOneRow(revisiontableName,tabrowDefDict,tabrowValueDict)
00423         
00424         tabrowDefDict={}
00425         tabrowDefDict['REVISION_ID']='unsigned long long'
00426         tabrowDefDict['DATA_ID']='unsigned long long'
00427         tabrowValueDict={}
00428         tabrowValueDict['REVISION_ID']=revisioninfo[0]
00429         tabrowValueDict['DATA_ID']=revisioninfo[1]
00430         db.insertOneRow(revtableName,tabrowDefDict,tabrowValueDict)
00431     except:
        raise    
def revisionDML::addRunToCurrentDataTag (   schema,
  runnum,
  lumiid,
  trgid,
  hltid,
  lumitype = 'HF',
  comment = '' 
)
select tagid from tags
insert into tagruns(tagid,runnum,lumidataid,trgdataid,hltdataid,creationtime,comment) values(tagid,runnum,lumiid,trgid,hltid,creationtime,comment)

Definition at line 549 of file revisionDML.py.

00550                                                                                      :
00551     '''
00552     select tagid from tags
00553     insert into tagruns(tagid,runnum,lumidataid,trgdataid,hltdataid,creationtime,comment) values(tagid,runnum,lumiid,trgid,hltid,creationtime,comment)
00554     '''
00555     if lumitype not in ['HF','PIXEL']:
00556         raise ValueError('unknown lumitype '+lumitype)
00557     if lumitype=='HF':
00558         tagrunstablename=nameDealer.tagrunsTableName()
00559     else:
00560         tagrunstablename=nameDealer.pixeltagRunsTableName()
00561     currenttagid=currentDataTag(schema,lumitype=lumitype)[0]
00562     try:
00563         db=dbUtil.dbUtil(schema)
00564         tabrowDefDict={}
00565         tabrowDefDict['TAGID']='unsigned long long'
00566         tabrowDefDict['RUNNUM']='unsigned int'
00567         tabrowDefDict['LUMIDATAID']='unsigned long long'
00568         tabrowDefDict['TRGDATAID']='unsigned long long'
00569         tabrowDefDict['HLTDATAID']='unsigned long long'
00570         tabrowDefDict['CREATIONTIME']='time stamp'
00571         tabrowDefDict['COMMENT']='string'
00572         tabrowValueDict={}
00573         tabrowValueDict['TAGID']=currenttagid
00574         tabrowValueDict['RUNNUM']=runnum
00575         tabrowValueDict['LUMIDATAID']=lumiid
00576         tabrowValueDict['TRGDATAID']=trgid
00577         tabrowValueDict['HLTDATAID']=hltid
00578         tabrowValueDict['CREATIONTIME']=coral.TimeStamp()
00579         tabrowValueDict['COMMENT']=comment
00580         db.insertOneRow( tagrunstablename,tabrowDefDict, tabrowValueDict )
00581     except:
00582         raise

def revisionDML::alldataTags (   schema,
  lumitype = 'HF' 
)
select tagname,tagid from tags,tagruns  
    if number of tags==1->open tag
    if tagid is max ->open tag
    for closed tag:
       max run=max(runnum) where tagid=:tagid
       min run
          select min(runnum) from tagruns where tagid<=:tagid
    for open tag:
       max run=None
       min run
          select min(runnum) from tagruns where tagid<=:tagid
output:
   {tagid:(name,minrun,maxrun,creationtime)}

Definition at line 583 of file revisionDML.py.

00584                                      :
00585     '''
00586     select tagname,tagid from tags,tagruns  
00587         if number of tags==1->open tag
00588         if tagid is max ->open tag
00589         for closed tag:
00590            max run=max(runnum) where tagid=:tagid
00591            min run
00592               select min(runnum) from tagruns where tagid<=:tagid
00593         for open tag:
00594            max run=None
00595            min run
00596               select min(runnum) from tagruns where tagid<=:tagid
00597     output:
00598        {tagid:(name,minrun,maxrun,creationtime)}
00599     '''
00600     if lumitype not in ['HF','PIXEL']:
00601         raise ValueError('unknown lumitype '+lumitype)
00602     if lumitype=='HF':
00603         tagstablename=nameDealer.tagsTableName()
00604         tagrunstablename=nameDealer.tagRunsTableName()
00605     else:
00606         tagstablename=nameDealer.pixeltagsTableName()
00607         tagrunstablename=nameDealer.pixeltagRunsTableName()
00608     tagmap={}#{tagid:[tagname,minrun,maxrun,creationtime]}
00609     try:
00610         qHandle=schema.newQuery()
00611         qHandle.addToTableList( tagstablename )
00612         qCondition=coral.AttributeList()
00613         qHandle.addToOutputList('TAGNAME')
00614         qHandle.addToOutputList('TAGID')
00615         qHandle.addToOutputList("TO_CHAR(CREATIONTIME,\'MM/DD/YY HH24:MI:SS\')",'creationtime')
00616         qResult=coral.AttributeList()        
00617         qResult.extend('TAGNAME','string')
00618         qResult.extend('TAGID','unsigned long long')
00619         qResult.extend('creationtime','string')
00620         qHandle.defineOutput(qResult)
00621         cursor=qHandle.execute()
00622         while cursor.next():
00623             tagname=cursor.currentRow()['TAGNAME'].data()
00624             tagid=cursor.currentRow()['TAGID'].data()
00625             creationtime=cursor.currentRow()['creationtime'].data()
00626             tagmap[tagid]=[tagname,0,0,creationtime]
00627         del qHandle
00628         
00629         tagids=tagmap.keys()
00630         allruns=set()
00631         for tagid in tagids:
00632             qConditionStr='TAGID<=:tagid'
00633             qCondition=coral.AttributeList()
00634             qCondition.extend('tagid','unsigned long long')
00635             qCondition['tagid'].setData(tagid)
00636             qHandle=schema.newQuery()
00637             qHandle.addToTableList( tagrunstablename )
00638             qResult=coral.AttributeList()
00639             qResult.extend('RUNNUM','unsigned int')
00640             qHandle.defineOutput(qResult)
00641             qHandle.setCondition(qConditionStr,qCondition)
00642             qHandle.addToOutputList('RUNNUM')
00643             cursor=qHandle.execute()
00644             while cursor.next():
00645                 rnum=cursor.currentRow()['RUNNUM'].data()
00646                 allruns.add(rnum)
00647             minrun=0
00648             maxrun=0
00649             if len(allruns)!=0:
00650                 minrun=min(allruns)
00651                 maxrun=max(allruns)
00652             tagmap[tagid][1]=minrun
00653             if len(tagmap)>1 and tagid!=max(tagids):
00654                 tagmap[tagid][2]=maxrun   
00655     except:
00656         raise
00657     return tagmap

def revisionDML::bookNewEntry (   schema,
  datatableName 
)
allocate new revision_id,entry_id,data_id

Definition at line 316 of file revisionDML.py.

00317                                       :
00318     '''
00319     allocate new revision_id,entry_id,data_id
00320     '''
00321     try:
00322         entrytableName=nameDealer.entryTableName(datatableName)
00323         iddealer=idDealer.idDealer(schema)
00324         revision_id=iddealer.generateNextIDForTable( nameDealer.revisionTableName() )
00325         data_id=iddealer.generateNextIDForTable( datatableName)
00326         entry_id=iddealer.generateNextIDForTable( nameDealer.entryTableName(datatableName) )
00327         return (revision_id,entry_id,data_id)
00328     except:
00329         raise
    
def revisionDML::bookNewRevision (   schema,
  datatableName 
)
allocate new revision_id,data_id

Definition at line 330 of file revisionDML.py.

00331                                          :
00332     '''
00333     allocate new revision_id,data_id
00334     '''
00335     try:
00336         iddealer=idDealer.idDealer(schema)
00337         revision_id=iddealer.generateNextIDForTable( nameDealer.revisionTableName() )
00338         data_id=iddealer.generateNextIDForTable(datatableName)
00339         return (revision_id,data_id)
00340     except:
00341         raise
     
def revisionDML::branchInfoByName (   schema,
  branchName 
)
select (revision_id,branch_id) from revisions where name=:branchName

Definition at line 282 of file revisionDML.py.

00283                                        :
00284     '''
00285     select (revision_id,branch_id) from revisions where name=:branchName
00286     '''
00287     try:
00288          qHandle=schema.newQuery()
00289          qHandle.addToTableList( nameDealer.revisionTableName() )
00290          qHandle.addToOutputList('REVISION_ID','revision_id')
00291          qHandle.addToOutputList('BRANCH_ID','branch_id')
00292          qCondition=coral.AttributeList()
00293          qCondition.extend('name','string')
00294          qCondition['name'].setData(branchName)
00295          qResult=coral.AttributeList()
00296          qResult.extend('revision_id','unsigned long long')
00297          qResult.extend('branch_id','unsigned long long')
00298          qHandle.defineOutput(qResult)
00299          qHandle.setCondition('NAME=:name',qCondition)
00300          cursor=qHandle.execute()
00301          revision_id=None
00302          branch_id=None
00303          while cursor.next():
00304              revision_id=cursor.currentRow()['revision_id'].data()
00305              branch_id=cursor.currentRow()['branch_id'].data()
00306          del qHandle
00307          return (revision_id,branch_id)
00308     except Exception,e :
00309         raise RuntimeError(' revisionDML.branchInfoByName: '+str(e))
00310     
00311 
00312 #=======================================================
00313 #
00314 #   INSERT requires in update transaction
00315 #
#=======================================================
def revisionDML::branchType (   schema,
  name 
)
output: tag,branch
the difference between tag and branch: tag is an empty branch
select count(revision_id) from revisions where branch_name=:name
if >0: is real branch
else: is tag

Definition at line 112 of file revisionDML.py.

Referenced by edm::PoolOutputModule::beginJob(), PFTauDiscriminants::DiscriminantBase< int >::branchTree(), edm::RootOutputFile::fillBranches(), edm::PoolOutputModule::fillSelectedItemList(), edm::RootOutputFile::finishEndFile(), edm::PrincipalGetAdapter::getBranchDescription(), edm::ProductRegistry::productProduced(), edm::PoolOutputModule::respondToOpenInputFile(), edm::RootOutputFile::RootOutputFile(), and edm::ProductRegistry::setProductProduced().

00113                            :
00114     '''
00115     output: tag,branch
00116     the difference between tag and branch: tag is an empty branch
00117     select count(revision_id) from revisions where branch_name=:name
00118     if >0: is real branch
00119     else: is tag
00120     '''
00121     result='tag'
00122     try:
00123         qHandle=schema.newQuery()
00124         qHandle.addToTableList( nameDealer.revisionTableName() )
00125         qHandle.addToOutputList('count(REVISION_ID)','nchildren')
00126         qCondition=coral.AttributeList()
00127         qCondition.extend('branch_name','string')
00128         qCondition['branch_name'].setData(name)
00129         qResult=coral.AttributeList()
00130         qResult.extend('nchildren','unsigned int')
00131         qHandle.defineOutput(qResult)
00132         conditionStr='BRANCH_NAME=:branch_name'
00133         qHandle.setCondition(conditionStr,qCondition)
00134         cursor=qHandle.execute()
00135         while cursor.next():
00136             if cursor.currentRow()['nchildren'].data()>0:
00137                 result='branch'                
00138         del qHandle
00139         return result
00140     except :
00141         raise 
00142 #def revisionsInBranch(schema,branchid):
00143 #    '''
00144 #    returns all revision values in a branch/tag
00145 #    result=[revision_id]
00146 #    select r.revision_id from revisions r where r.branch_id=:branchid and r.revision_id not in (select distinct a.branch_id from revisions a where a.branch_id>:branchid)
00147 #    '''
00148 #    result=[]
00149 #    try:
00150 #        qHandle=schema.newQuery()
00151 #        subquery=qHandle.defineSubQuery('B')
00152 #        subquery.addToTableList( nameDealer.revisionTableName(),'a' )
00153 #        subquery.addToOutputList('distinct a.BRANCH_ID')
00154 #        subqueryCondition=coral.AttributeList()
00155 #        subqueryCondition.extend('branchid','unsigned long long')
00156 #        subqueryCondition['branchid'].setData(branchid)
00157 #        subquery.setCondition('a.BRANCH_ID>:branchid',subqueryCondition)
00158 #        
00159 #        qHandle.addToTableList( nameDealer.revisionTableName(),'r' )
00160 #        qHandle.addToTableList( 'B')
00161 #        qHandle.addToOutputList('r.REVISION_ID','revision_id')
00162 #        qCondition=coral.AttributeList()
00163 #        qCondition.extend('branchid','unsigned long long')
00164 #        qCondition['branchid'].setData(branchid)
00165 #        qResult=coral.AttributeList()
00166 #        qResult.extend('revision_id','unsigned long long')
00167 #        qHandle.defineOutput(qResult)
00168 #        conditionStr='r.BRANCH_ID=:branchid AND r.REVISION_ID NOT IN B'
00169 #        qHandle.setCondition(conditionStr,qCondition)
00170 #        cursor=qHandle.execute()
00171 #        while cursor.next():
00172 #            result.append(cursor.currentRow()['revision_id'].data())
00173 #        del qHandle
00174 #        return result
00175 #    except :
00176 #        raise 
    
def revisionDML::createBranch (   schema,
  name,
  parentname,
  comment = '' 
)
create a new branch/tag under given parentnode
insert into revisions(revision_id,branch_id,branch_name,name,comment,ctime) values()
return (revisionid,parentid,parentname)

Definition at line 432 of file revisionDML.py.

00433                                                    :
00434     '''
00435     create a new branch/tag under given parentnode
00436     insert into revisions(revision_id,branch_id,branch_name,name,comment,ctime) values()
00437     return (revisionid,parentid,parentname)
00438     '''
00439     try:
00440         parentid=None
00441         revisionid=0       
00442         if not parentname is None:
00443             qHandle=schema.newQuery()
00444             qHandle.addToTableList( nameDealer.revisionTableName() )
00445             qHandle.addToOutputList( 'REVISION_ID','revision_id' )
00446             qCondition=coral.AttributeList()
00447             qCondition.extend('parentname','string')
00448             qCondition['parentname'].setData(parentname)
00449             qResult=coral.AttributeList()
00450             qResult.extend('revision_id','unsigned long long')
00451             qHandle.defineOutput(qResult)
00452             qHandle.setCondition('NAME=:parentname',qCondition)
00453             cursor=qHandle.execute()
00454             while cursor.next():
00455                 parentid=cursor.currentRow()['revision_id'].data()
00456             del qHandle
00457         else:
00458             parentname='ROOT'
00459         iddealer=idDealer.idDealer(schema)
00460         revisionid=iddealer.generateNextIDForTable( nameDealer.revisionTableName() )
00461         db=dbUtil.dbUtil(schema)
00462         tabrowDefDict={}
00463         tabrowDefDict['REVISION_ID']='unsigned long long'
00464         tabrowDefDict['BRANCH_ID']='unsigned long long'
00465         tabrowDefDict['BRANCH_NAME']='string'
00466         tabrowDefDict['NAME']='string'
00467         tabrowDefDict['COMMENT']='string'
00468         tabrowDefDict['CTIME']='time stamp'
00469         tabrowValueDict={}
00470         tabrowValueDict['REVISION_ID']=revisionid
00471         tabrowValueDict['BRANCH_ID']=parentid
00472         tabrowValueDict['BRANCH_NAME']=parentname
00473         tabrowValueDict['NAME']=name
00474         tabrowValueDict['COMMENT']=comment
00475         tabrowValueDict['CTIME']=coral.TimeStamp()
00476         db.insertOneRow(nameDealer.revisionTableName(),tabrowDefDict, tabrowValueDict )
00477         return (revisionid,parentid,parentname)
00478     except:
00479         raise
    
def revisionDML::createDataTag (   schema,
  tagname,
  lumitype = 'HF' 
)

Data Tagging API.

insert into tags(tagname,tagid,creationtime) values()
output:
    tagname,tagid,creationtime

Definition at line 483 of file revisionDML.py.

00484                                                :
00485     '''
00486     insert into tags(tagname,tagid,creationtime) values()
00487     output:
00488         tagname,tagid,creationtime
00489     '''
00490     if lumitype not in ['HF','PIXEL']:
00491         raise ValueError('unknown lumitype '+lumitype)
00492     if lumitype=='HF':
00493         tagstablename=nameDealer.tagsTableName()
00494     else:
00495         tagstablename=nameDealer.pixeltagsTableName()
00496     try:
00497         iddealer=idDealer.idDealer(schema)
00498         tagid=iddealer.generateNextIDForTable( tagstablename )
00499         db=dbUtil.dbUtil(schema)
00500         tabrowDefDict={}
00501         tabrowDefDict['TAGNAME']='string'
00502         tabrowDefDict['TAGID']='unsigned long long'
00503         tabrowDefDict['CREATIONTIME']='time stamp'
00504         tabrowValueDict={}
00505         tabrowValueDict['TAGNAME']=tagname
00506         tabrowValueDict['TAGID']=tagid
00507         creationtime=coral.TimeStamp()
00508         tabrowValueDict['CREATIONTIME']=creationtime
00509         db.insertOneRow(tagstablename,tabrowDefDict, tabrowValueDict )
00510         return (tagname,tagid,creationtime)
00511     except:
00512         raise

def revisionDML::currentDataTag (   schema,
  lumitype = 'HF' 
)
select tagid,tagname from tags
output:(tagid,tagname)

Definition at line 513 of file revisionDML.py.

00514                                         :
00515     '''
00516     select tagid,tagname from tags
00517     output:(tagid,tagname)
00518     '''
00519     if lumitype not in ['HF','PIXEL']:
00520         raise ValueError('unknown lumitype '+lumitype)
00521     if lumitype=='HF':
00522         tagstablename=nameDealer.tagsTableName()
00523     else:
00524         tagstablename=nameDealer.pixeltagsTableName()
00525     tagmap={}
00526     try:
00527         qHandle=schema.newQuery()
00528         qHandle.addToTableList( tagstablename )
00529         qHandle.addToOutputList('TAGID')
00530         qHandle.addToOutputList('TAGNAME')
00531         qResult=coral.AttributeList()
00532         qResult.extend('TAGID','unsigned long long')
00533         qResult.extend('TAGNAME','string')
00534         qHandle.defineOutput(qResult)
00535         cursor=qHandle.execute()
00536         currenttagid=0
00537         while cursor.next():
00538             tagid=cursor.currentRow()['TAGID'].data()
00539             tagname=cursor.currentRow()['TAGNAME'].data()
00540             tagmap[tagid]=tagname
00541         del qHandle
00542         if len(tagmap)!=0:
00543             currenttagid=max(tagmap.keys())
00544         if currenttagid==0:
00545             raise 'currentDataTag: no tag available'
00546         return (currenttagid,tagmap[currenttagid])
00547     except:
00548         raise
        
def revisionDML::dataIdsByCurrentTag (   schema,
  runlist = None,
  lumitype = 'HF' 
)
dataIdsByTagId(schema,currenttagid,runlist)
output:
   (currenttagname,{run:(lumidataid,trgdataid,hltdataid)})

Definition at line 858 of file revisionDML.py.

00859                                                           :
00860     '''
00861     dataIdsByTagId(schema,currenttagid,runlist)
00862     output:
00863        (currenttagname,{run:(lumidataid,trgdataid,hltdataid)})
00864     '''
00865     (currenttagid,currenttagname)=currentDataTag(schema)
00866     result=dataIdsByTagId(schema,currenttagid,runlist=runlist,withcomment=False,lumitype=lumitype)
00867     return (currenttagname,result)

def revisionDML::dataIdsByTagId (   schema,
  tagid,
  runlist = None,
  withcomment = False,
  lumitype = 'HF' 
)
select runnum,lumidataid,trgdataid,hltdataid,comment from tagruns where TAGID<=:tagid;
input:
    runlist: select run list, if None, all
output:
    {run:(lumidataid,trgdataid,hltdataid,(creationtime,comment))}

Definition at line 767 of file revisionDML.py.

00768                                                                              :
00769     '''
00770     select runnum,lumidataid,trgdataid,hltdataid,comment from tagruns where TAGID<=:tagid;
00771     input:
00772         runlist: select run list, if None, all
00773     output:
00774         {run:(lumidataid,trgdataid,hltdataid,(creationtime,comment))}
00775     '''
00776     if lumitype not in ['HF','PIXEL']:
00777         raise ValueError('unknown lumitype '+lumitype)
00778     if lumitype=='HF':
00779         tagrunstablename=nameDealer.tagRunsTableName()
00780     else:
00781         tagrunstablename=nameDealer.pixeltagRunsTableName()
00782     result={}#{run:[lumiid,trgid,hltid,comment(optional)]} 
00783     commentdict={}#{(lumiid,trgid,hltid):[ctimestr,comment]}
00784     try:
00785         qHandle=schema.newQuery()
00786         qHandle.addToTableList(tagrunstablename)
00787         qConditionStr='TAGID<=:tagid'
00788         qCondition=coral.AttributeList()
00789         qCondition.extend('tagid','unsigned long long')
00790         qCondition['tagid'].setData(tagid)
00791         qResult=coral.AttributeList()        
00792         qResult.extend('RUNNUM','unsigned int')
00793         qResult.extend('LUMIDATAID','unsigned long long')
00794         qResult.extend('TRGDATAID','unsigned long long')
00795         qResult.extend('HLTDATAID','unsigned long long')
00796         if withcomment:
00797             qResult.extend('COMMENT','string')
00798             qResult.extend('creationtime','string')
00799         qHandle.defineOutput(qResult)
00800         qHandle.setCondition(qConditionStr,qCondition)
00801         qHandle.addToOutputList('RUNNUM')
00802         qHandle.addToOutputList('LUMIDATAID')
00803         qHandle.addToOutputList('TRGDATAID')
00804         qHandle.addToOutputList('HLTDATAID')
00805         if withcomment:
00806             qHandle.addToOutputList('COMMENT')
00807             qHandle.addToOutputList("TO_CHAR(CREATIONTIME,\'MM/DD/YY HH24:MI:SS\')",'creationtime')
00808         cursor=qHandle.execute()
00809         while cursor.next():
00810             runnum=cursor.currentRow()['RUNNUM'].data()
00811             if runlist is not None and runnum not in runlist:
00812                 continue
00813             lumidataid=0
00814             if not cursor.currentRow()['LUMIDATAID'].isNull():
00815                 lumidataid=cursor.currentRow()['LUMIDATAID'].data()
00816             trgdataid=0
00817             if not cursor.currentRow()['TRGDATAID'].isNull():
00818                 trgdataid=cursor.currentRow()['TRGDATAID'].data()
00819             hltdataid=0
00820             if not cursor.currentRow()['HLTDATAID'].isNull():
00821                 hltdataid=cursor.currentRow()['HLTDATAID'].data()
00822             if not result.has_key(runnum):
00823                 result[runnum]=[0,0,0]
00824             if lumidataid>result[runnum][0]:
00825                 result[runnum][0]=lumidataid
00826             if trgdataid>result[runnum][1]:
00827                 result[runnum][1]=trgdataid
00828             if hltdataid>result[runnum][2]:
00829                 result[runnum][2]=hltdataid    
00830             if withcomment:
00831                 comment=''
00832                 creationtime=''
00833                 if not cursor.currentRow()['creationtime'].isNull():
00834                     creationtime=cursor.currentRow()['creationtime'].data()
00835                 if not cursor.currentRow()['COMMENT'].isNull():
00836                     comment=cursor.currentRow()['COMMENT'].data()
00837                 commentdict[(lumidataid,trgdataid,hltdataid)]=(creationtime,comment)
00838         del qHandle
00839         if withcomment:
00840             for run,resultentry in result.items():
00841                 lumiid=resultentry[0]
00842                 trgid=resultentry[1]
00843                 hltid=resultentry[2]
00844                 if commentdict.has_key((lumiid,trgid,hltid)):
00845                     resultentry.append(commentdict[(lumiid,trgid,hltid)])
00846                 elif commentdict.has_key((lumiid,0,0)):
00847                     resultentry.append(commentdict[(lumiid,0,0)])
00848                 elif commentdict.has_ley((0,trgid,0)):
00849                     resultentry.append(commentdict[(0,trgid,0)])
00850                 elif commentdict.has_ley((0,0,hltid)):
00851                     resultentry.append(commentdict[(0,0,hltid)])
00852                 else:
00853                     resultentry.append(())
00854                     
00855     except:
00856         raise
00857     return result
    
def revisionDML::dataIdsByTagName (   schema,
  tagname,
  runlist = None,
  withcomment = False,
  lumitype = 'HF' 
)
select tagid from tags where tagname=:tagname
input:
    runlist: select run list, if None, all
output:
    {run:(lumidataid,trgdataid,hltdataid,(creationtime,comment)}

Definition at line 658 of file revisionDML.py.

00659                                                                                  :
00660     '''
00661     select tagid from tags where tagname=:tagname
00662     input:
00663         runlist: select run list, if None, all
00664     output:
00665         {run:(lumidataid,trgdataid,hltdataid,(creationtime,comment)}
00666     '''
00667     if lumitype not in ['HF','PIXEL']:
00668         raise ValueError('unknown lumitype '+lumitype)
00669     if lumitype=='HF':
00670         tagstablename=nameDealer.tagsTableName()
00671     else:
00672         tagstablename=nameDealer.pixeltagsTableName()        
00673     tagid=None
00674     try:
00675         qHandle=schema.newQuery()
00676         qHandle.addToTableList( tagstablename )
00677         qConditionStr='TAGNAME=:tagname'
00678         qCondition=coral.AttributeList()
00679         qCondition.extend('tagname','string')
00680         qCondition['tagname'].setData(tagname)
00681         qHandle.addToOutputList('TAGID')
00682         qResult=coral.AttributeList()        
00683         qResult.extend('TAGID','unsigned long long')
00684         qHandle.defineOutput(qResult)
00685         qHandle.setCondition(qConditionStr,qCondition)
00686         cursor=qHandle.execute()
00687         while cursor.next():
00688             if not cursor.currentRow()['TAGID'].isNull():
00689                 tagid=cursor.currentRow()['TAGID'].data()
00690         del qHandle
00691     except:
00692         raise
00693     if tagid is None:
00694         return {}
00695     return dataIdsByTagId(schema,tagid,runlist=runlist,withcomment=withcomment,lumitype=lumitype)
00696 

def revisionDML::dataRevisionsOfEntry (   schema,
  datatableName,
  entry,
  revrange 
)
all data version of the given entry whose revision falls in branch revision range
select d.data_id,r.revision_id from datatable d, datarevmaptable r where d.entry_id(or name )=:entry and d.data_id=r.data_id
input: if isinstance(entry,str): d.entry_name=:entry ; else d.entry_id=:entry
output: [data_id]

Definition at line 231 of file revisionDML.py.

00232                                                              :
00233     '''
00234     all data version of the given entry whose revision falls in branch revision range
00235     select d.data_id,r.revision_id from datatable d, datarevmaptable r where d.entry_id(or name )=:entry and d.data_id=r.data_id
00236     input: if isinstance(entry,str): d.entry_name=:entry ; else d.entry_id=:entry
00237     output: [data_id]
00238     '''
00239     qHandle=schema.newQuery()
00240     try:
00241         result=[]
00242         byname=False
00243         if isinstance(entry,str):
00244             byname=True
00245         qHandle.addToTableList( datatableName,'d' )
00246         qHandle.addToTableList( nameDealer.revmapTableName(datatableName), 'r')
00247         qHandle.addToOutputList('d.DATA_ID','data_id')
00248         qHandle.addToOutputList('r.REVISION_ID','revision_id')
00249         qCondition=coral.AttributeList()
00250         qConditionStr='d.DATA_ID=r.DATA_ID and '
00251         if byname:
00252             qCondition.extend('entry_name','string')
00253             qCondition['entry_name'].setData(entry)
00254             qConditionStr+='d.ENTRY_NAME=:entry_name'
00255         else:
00256             qCondition.extend('entry_id','unsigned long long')
00257             qCondition['entry_id'].setData(entry)
00258             qConditionStr+='d.ENTRY_ID=:entry_id'
00259         qResult=coral.AttributeList()
00260         qResult.extend('data_id','unsigned long long')
00261         qResult.extend('revision_id','unsigned long long')
00262         qHandle.defineOutput(qResult)
00263         qHandle.setCondition(qConditionStr,qCondition)
00264         cursor=qHandle.execute()
00265         while cursor.next():
00266             data_id=cursor.currentRow()['data_id'].data()
00267             revision_id=cursor.currentRow()['revision_id'].data()
00268             if revision_id in revrange:
00269                 result.append(data_id)
00270         return result
00271     except :
00272         del qHandle
00273         raise

def revisionDML::dataTagInfo (   schema,
  tagname,
  runlist = None,
  lumitype = 'HF' 
)
select tagid from tags where tagname=:tagname
select runnum,comment from tagruns where tagid<=:tagid
input:
    runlist: select run list, if None, all
output:
   {tagid:(name,minrun,maxrun,creationtime)}

Definition at line 697 of file revisionDML.py.

00698                                                           :
00699     '''
00700     select tagid from tags where tagname=:tagname
00701     select runnum,comment from tagruns where tagid<=:tagid
00702     input:
00703         runlist: select run list, if None, all
00704     output:
00705        {tagid:(name,minrun,maxrun,creationtime)}
00706     '''
00707     if lumitype not in ['HF','PIXEL']:
00708         raise ValueError('unknown lumitype '+lumitype)
00709     if lumitype=='HF':
00710         tagstablename=nameDealer.tagsTableName()
00711         tagrunstablename=nameDealer.tagRunsTableName()
00712     else:
00713         tagstablename=nameDealer.pixeltagsTableName()
00714         tagrunstablename=nameDealer.pixeltagRunsTableName()
00715     tagmap={}#{tagid:[tagname,minrun,maxrun,creationtime]}
00716     try:
00717         qHandle=schema.newQuery()
00718         qHandle.addToTableList( tagstablename )
00719         qCondition=coral.AttributeList()
00720         qHandle.addToOutputList('TAGNAME')
00721         qHandle.addToOutputList('TAGID')
00722         qHandle.addToOutputList("TO_CHAR(CREATIONTIME,\'MM/DD/YY HH24:MI:SS\')",'creationtime')
00723         qResult=coral.AttributeList()        
00724         qResult.extend('TAGNAME','string')
00725         qResult.extend('TAGID','unsigned long long')
00726         qResult.extend('creationtime','string')
00727         qHandle.defineOutput(qResult)
00728         cursor=qHandle.execute()
00729         while cursor.next():
00730             tagname=cursor.currentRow()['TAGNAME'].data()
00731             tagid=cursor.currentRow()['TAGID'].data()
00732             creationtime=cursor.currentRow()['creationtime'].data()
00733             tagmap[tagid]=[tagname,0,0,creationtime]
00734         del qHandle
00735         
00736         tagids=tagmap.keys()
00737         allruns=set()
00738         for tagid in tagids:
00739             qConditionStr='TAGID<=:tagid'
00740             qCondition=coral.AttributeList()
00741             qCondition.extend('tagid','unsigned long long')
00742             qCondition['tagid'].setData(tagid)
00743             qHandle=schema.newQuery()
00744             qHandle.addToTableList(tagrunstablename)
00745             qResult=coral.AttributeList()
00746             qResult.extend('RUNNUM','unsigned int')
00747             qHandle.defineOutput(qResult)
00748             qHandle.setCondition(qConditionStr,qCondition)
00749             qHandle.addToOutputList('RUNNUM')
00750             cursor=qHandle.execute()
00751             while cursor.next():
00752                 rnum=cursor.currentRow()['RUNNUM'].data()
00753                 if runlist is not None and rnum not in runlist:
00754                     continue
00755                 allruns.add(rnum)
00756             minrun=0
00757             maxrun=0
00758             if len(allruns)!=0:
00759                 minrun=min(allruns)
00760                 maxrun=max(allruns)
00761             tagmap[tagid][1]=minrun
00762             if len(tagmap)>1 and tagid!=max(tagids):
00763                 tagmap[tagid][2]=maxrun   
00764     except:
00765         raise
00766     return tagmap

def revisionDML::entryInBranch (   schema,
  datatableName,
  entryname,
  branch 
)
whether an entry(by name) already exists in the given branch
select e.entry_id from entrytable e,revisiontable r where r.revision_id=e.revision_id and e.name=:entryname and r.branch_name=branchname/branch_id
input:
    if isinstance(branch,str):byname
    else: byid
output:entry_id/None

Definition at line 188 of file revisionDML.py.

00189                                                         :
00190     '''
00191     whether an entry(by name) already exists in the given branch
00192     select e.entry_id from entrytable e,revisiontable r where r.revision_id=e.revision_id and e.name=:entryname and r.branch_name=branchname/branch_id
00193     input:
00194         if isinstance(branch,str):byname
00195         else: byid
00196     output:entry_id/None
00197     '''
00198     try:
00199         result=None
00200         byname=False
00201         if isinstance(branch,str):
00202             byname=True
00203         qHandle=schema.newQuery()
00204         qHandle.addToTableList( nameDealer.entryTableName(datatableName),'e' )
00205         qHandle.addToTableList( nameDealer.revisionTableName(),'r' )
00206         qHandle.addToOutputList('e.ENTRY_ID','entry_id')
00207         qCondition=coral.AttributeList()
00208         qCondition.extend('entryname','string')
00209         qCondition['entryname'].setData(entryname)
00210         qConditionStr='r.REVISION_ID=e.REVISION_ID and e.NAME=:entryname and '
00211         if byname:
00212             qCondition.extend('branch_name','string')
00213             qCondition['branch_name'].setData(branch)
00214             qConditionStr+='r.BRANCH_NAME=:branch_name'
00215         else:
00216             qCondition.extend('branch_id','unsigned long long')
00217             qCondition['branch_id'].setData(branch)
00218             qConditionStr+='r.BRANCH_ID=:branch_id'
00219         qResult=coral.AttributeList()
00220         qResult.extend('entry_id','unsigned long long')
00221         qHandle.defineOutput(qResult)
00222         qHandle.setCondition(qConditionStr,qCondition)
00223         cursor=qHandle.execute()
00224         while cursor.next():
00225             entry_id=cursor.currentRow()['entry_id'].data()
00226             result=entry_id
00227         del qHandle
00228         return result
00229     except :
00230         raise 

def revisionDML::latestDataRevisionOfEntry (   schema,
  datatableName,
  entry,
  revrange 
)
return max(data_id) of all datarevisionofEntry

Definition at line 274 of file revisionDML.py.

00275                                                                   :
00276     '''
00277     return max(data_id) of all datarevisionofEntry
00278     '''
00279     result=dataRevisionsOfEntry(schema,datatableName,entry,revrange)
00280     if result and len(result)!=0: return max(result)
00281     return None
    
def revisionDML::revisionsInBranch (   schema,
  branchid 
)
returns all revision values in a branch
result=[revision_id]
select distinct branch_id from revisions where branch_id>:branchid;
select revision_id from revisions where branch_id=:branchid ;
if the branchid matches and the revisionid is not in the branchid collection,not 0, then this revision is in the branch
require also revisionid>branchid

Definition at line 61 of file revisionDML.py.

00062                                       :
00063     '''
00064     returns all revision values in a branch
00065     result=[revision_id]
00066     select distinct branch_id from revisions where branch_id>:branchid;
00067     select revision_id from revisions where branch_id=:branchid ;
00068     if the branchid matches and the revisionid is not in the branchid collection,not 0, then this revision is in the branch
00069     require also revisionid>branchid
00070     '''
00071     result=[]
00072     qHandle=schema.newQuery()
00073     try:
00074         nextbranches=[]
00075         qHandle.addToTableList( nameDealer.revisionTableName() )
00076         qHandle.addToOutputList('distinct BRANCH_ID','branch_id')
00077         qCondition=coral.AttributeList()
00078         qCondition.extend('branchid','unsigned long long')
00079         qCondition['branchid'].setData(branchid)
00080         qResult=coral.AttributeList()
00081         qResult.extend('branch_id','unsigned long long')
00082         qHandle.defineOutput(qResult)
00083         qHandle.setCondition('BRANCH_ID>:branchid',qCondition)
00084         cursor=qHandle.execute()
00085         while cursor.next():
00086             nextbranches.append(cursor.currentRow()['branch_id'].data())
00087         del qHandle
00088         candidates=[]
00089         conditionStr='BRANCH_ID=:branchid and REVISION_ID!=0'
00090         qHandle=schema.newQuery()
00091         qHandle.addToTableList( nameDealer.revisionTableName() )
00092         qHandle.addToOutputList('REVISION_ID','revision_id')
00093         qCondition=coral.AttributeList()
00094         qCondition.extend('branchid','unsigned long long')
00095         qCondition['branchid'].setData(branchid)
00096         qResult=coral.AttributeList()
00097         qResult.extend('revision_id','unsigned long long')
00098         qHandle.defineOutput(qResult)
00099         qHandle.setCondition(conditionStr,qCondition)
00100         cursor=qHandle.execute()
00101         while cursor.next():
00102             candidates.append(cursor.currentRow()['revision_id'].data())
00103         del qHandle
00104         for c in candidates:
00105             if c in nextbranches:
00106                 continue
00107             result.append(c)
00108         return result
00109     except:
00110         if qHandle: del qHandle
00111         raise

def revisionDML::revisionsInBranchName (   schema,
  branchname 
)
returns all revisions in a branch/tag by name

Definition at line 177 of file revisionDML.py.

00178                                             :
00179     '''
00180     returns all revisions in a branch/tag by name
00181     '''
00182     result=[]
00183     try:
00184         (revision_id,branch_id)=branchInfoByName(schema,branchname)
00185         result=revisionsInBranch(schema,revision_id)
00186         return result
00187     except :
        raise 
def revisionDML::revisionsInTag (   schema,
  tagrevisionid,
  branchid 
)
returns all revisions before tag in selected branch
select revision_id from revisions where revision_id!=0 and revision_id<tagrevisionid and branch_id=:branchid
result=[revision_id]

Definition at line 12 of file revisionDML.py.

00013                                                  :
00014     '''
00015     returns all revisions before tag in selected branch
00016     select revision_id from revisions where revision_id!=0 and revision_id<tagrevisionid and branch_id=:branchid
00017     result=[revision_id]
00018     '''
00019     result=[]
00020     qHandle=schema.newQuery()
00021     try:
00022         nextbranches=[]
00023         qHandle.addToTableList( nameDealer.revisionTableName() )
00024         qHandle.addToOutputList('distinct BRANCH_ID','branch_id')
00025         qCondition=coral.AttributeList()
00026         qCondition.extend('branchid','unsigned long long')
00027         qCondition['branchid'].setData(branchid)
00028         qResult=coral.AttributeList()
00029         qResult.extend('branch_id','unsigned long long')
00030         qHandle.defineOutput(qResult)
00031         qHandle.setCondition('BRANCH_ID>:branchid',qCondition)
00032         cursor=qHandle.execute()
00033         while cursor.next():
00034             nextbranches.append(cursor.currentRow()['branch_id'].data())
00035         del qHandle
00036         candidates=[]
00037         conditionStr='REVISION_ID!=0 and BRANCH_ID=:branchid and REVISION_ID<:tagrevisionid'
00038         qHandle=schema.newQuery()
00039         qHandle.addToTableList( nameDealer.revisionTableName() )
00040         qHandle.addToOutputList('REVISION_ID','revision_id')
00041         qCondition=coral.AttributeList()
00042         qCondition.extend('branchid','unsigned long long')
00043         qCondition.extend('tagrevisionid','unsigned long long')
00044         qCondition['branchid'].setData(branchid)
00045         qCondition['tagrevisionid'].setData(tagrevisionid)
00046         qResult=coral.AttributeList()
00047         qResult.extend('revision_id','unsigned long long')
00048         qHandle.defineOutput(qResult)
00049         qHandle.setCondition(conditionStr,qCondition)
00050         cursor=qHandle.execute()
00051         while cursor.next():
00052             candidates.append(cursor.currentRow()['revision_id'].data())
00053         del qHandle
00054         for c in candidates:
00055             if c in nextbranches:
00056                 continue
00057             result.append(c)
00058         return result
00059     except:
00060         if qHandle:del qHandle
        raise

Variable Documentation

tuple revisionDML::databranchinfo = (branchid,'DATA')

Definition at line 886 of file revisionDML.py.

tuple revisionDML::datainfo = createBranch(schema,'DATA','TRUNK',comment='hold data')

Definition at line 881 of file revisionDML.py.

tuple revisionDML::entryinfo = (revision_id,entry_id,str(runnum),data_id)

Definition at line 894 of file revisionDML.py.

tuple revisionDML::hltentryid = entryInBranch(schema,nameDealer.hltdataTableName(),str(runnum),'DATA')

Definition at line 891 of file revisionDML.py.

tuple revisionDML::latestrevision = latestDataRevisionOfEntry(schema,nameDealer.lumidataTableName(),lumientry_id,revlist)

Definition at line 928 of file revisionDML.py.

tuple revisionDML::lumientry_id = entryInBranch(schema,nameDealer.lumidataTableName(),'1211','DATA')

Definition at line 926 of file revisionDML.py.

tuple revisionDML::lumientryid = entryInBranch(schema,nameDealer.lumidataTableName(),str(runnum),'DATA')

Definition at line 889 of file revisionDML.py.

string revisionDML::myconstr = 'sqlite_file:test.db'

Definition at line 873 of file revisionDML.py.

tuple revisionDML::norminfo = createBranch(schema,'NORM','TRUNK',comment='hold normalization factor')

Definition at line 883 of file revisionDML.py.

tuple revisionDML::revisioninfo = bookNewRevision( schema,nameDealer.lumidataTableName() )

Definition at line 898 of file revisionDML.py.

tuple revisionDML::revlist = revisionsInBranchName(schema,'DATA')

Definition at line 924 of file revisionDML.py.

tuple revisionDML::schema = session.nominalSchema()

Definition at line 876 of file revisionDML.py.

tuple revisionDML::session = svc.openSession(isReadOnly=False,cpp2sqltype=[('unsigned int','NUMBER(10)'),('unsigned long long','NUMBER(20)')])

Definition at line 875 of file revisionDML.py.

Definition at line 874 of file revisionDML.py.

tuple revisionDML::tables = lumidbDDL.createTables(schema)

Definition at line 878 of file revisionDML.py.

tuple revisionDML::trgentryid = entryInBranch(schema,nameDealer.trgdataTableName(),str(runnum),'DATA')

Definition at line 890 of file revisionDML.py.

tuple revisionDML::trunkinfo = createBranch(schema,'TRUNK',None,comment='main')

Definition at line 879 of file revisionDML.py.