CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Functions | Variables
lumiData Namespace Reference

Functions

def defaultfrontierConfigString
 
def listRemoveDuplicate
 
def main
 
def printRunList
 
def runListInDB
 

Variables

string VERSION = '2.00'
 

Function Documentation

def lumiData.defaultfrontierConfigString (   self)

Definition at line 7 of file lumiData.py.

7 
return """<frontier-connect><proxy url="http://cmst0frontier.cern.ch:3128"/><proxy url="http://cmst0frontier.cern.ch:3128"/><proxy url="http://cmst0frontier1.cern.ch:3128"/><proxy url="http://cmst0frontier2.cern.ch:3128"/><server url="http://cmsfrontier.cern.ch:8000/FrontierInt"/><server url="http://cmsfrontier.cern.ch:8000/FrontierInt"/><server url="http://cmsfrontier1.cern.ch:8000/FrontierInt"/><server url="http://cmsfrontier2.cern.ch:8000/FrontierInt"/><server url="http://cmsfrontier3.cern.ch:8000/FrontierInt"/><server url="http://cmsfrontier4.cern.ch:8000/FrontierInt"/></frontier-connect>"""
def defaultfrontierConfigString
Definition: lumiData.py:7
def lumiData.listRemoveDuplicate (   inlist)

Definition at line 9 of file lumiData.py.

Referenced by runListInDB().

9 
10 def listRemoveDuplicate(inlist):
11  d={}
12  for x in inlist:
13  d[x]=x
14  return d.values()
def listRemoveDuplicate
Definition: lumiData.py:9
def lumiData.main ( )

Definition at line 60 of file lumiData.py.

References printRunList(), and runListInDB().

60 
61 def main():
62  parser = argparse.ArgumentParser(prog=os.path.basename(sys.argv[0]),description="Lumi Data operations")
63  # add required arguments
64  parser.add_argument('-c',dest='connect',action='store',required=True,help='connect string to lumiDB')
65  # add optional arguments
66  parser.add_argument('-P',dest='authpath',action='store',help='path to authentication file')
67  parser.add_argument('-lumiversion',dest='lumiversion',action='store',help='lumi data version, optional')
68  parser.add_argument('-siteconfpath',dest='siteconfpath',action='store',help='specific path to site-local-config.xml file, default to $CMS_PATH/SITECONF/local/JobConfig, if path undefined, fallback to cern proxy&server')
69  parser.add_argument('action',choices=['listrun'],help='command actions')
70  parser.add_argument('--raw',dest='printraw',action='store_true',help='print raw data' )
71  parser.add_argument('--verbose',dest='verbose',action='store_true',help='verbose mode for printing' )
72  parser.add_argument('--debug',dest='debug',action='store_true',help='debug')
73  # parse arguments
74  args=parser.parse_args()
75  connectstring=args.connect
76  connectparser=connectstrParser.connectstrParser(connectstring)
77  connectparser.parse()
78  usedefaultfrontierconfig=False
79  cacheconfigpath=''
80  if connectparser.needsitelocalinfo():
81  if not args.siteconfpath:
82  cacheconfigpath=os.environ['CMS_PATH']
83  if cacheconfigpath:
84  cacheconfigpath=os.path.join(cacheconfigpath,'SITECONF','local','JobConfig','site-local-config.xml')
85  else:
86  usedefaultfrontierconfig=True
87  else:
88  cacheconfigpath=args.siteconfpath
89  cacheconfigpath=os.path.join(cacheconfigpath,'site-local-config.xml')
91  if usedefaultfrontierconfig:
92  p.parseString(c.defaultfrontierConfigString)
93  else:
94  p.parse(cacheconfigpath)
95  connectstring=connectparser.fullfrontierStr(connectparser.schemaname(),p.parameterdict())
96  #print 'connectstring',connectstring
97  runnumber=0
98  svc = coral.ConnectionService()
99  isverbose=False
100  if args.debug :
101  msg=coral.MessageStream('')
102  msg.setMsgVerbosity(coral.message_Level_Debug)
103  c.VERBOSE=True
104 
105  if args.verbose :
106  c.VERBOSE=True
107  if args.authpath and len(args.authpath)!=0:
108  os.environ['CORAL_AUTH_PATH']=args.authpath
109 
110  session=svc.connect(connectstring,accessMode=coral.access_Update)
111  session.typeConverter().setCppTypeForSqlType("unsigned int","NUMBER(10)")
112 
113  if args.action == 'listrun':
114  lumiversion=''
115  if args.lumiversion:
116  lumiversion=args.lumiversion
117  runlist=runListInDB(session,lumiversion)
118  if args.printraw:
119  print runlist
120  else: printRunList(runlist)
121 
122  del session
del svc
def main
Definition: lumiData.py:60
def printRunList
Definition: lumiData.py:53
def runListInDB
Definition: lumiData.py:15
def lumiData.printRunList (   runlistdata)

Definition at line 53 of file lumiData.py.

References tablePrinter.indent(), and wordWrappers.wrap_onspace().

Referenced by main().

53 
54 def printRunList(runlistdata):
55  result=[['Run','Lumiversion']]
56  for tp in runlistdata:
57  i=[str(tp[0]),tp[1]]
58  result.append(i)
59  print tablePrinter.indent(result,hasHeader=True,separateRows=False,prefix='| ',postfix=' |',wrapfunc=lambda x: wrap_onspace(x,20) )
def printRunList
Definition: lumiData.py:53
def lumiData.runListInDB (   dbsession,
  lumiversion = '' 
)
list available runs in the DB
output: [runnumber]

Definition at line 15 of file lumiData.py.

References runTheMatrix.data, listRemoveDuplicate(), and nameDealer.lumisummaryTableName().

Referenced by main().

15 
16 def runListInDB(dbsession,lumiversion=''):
17  """
18  list available runs in the DB
19  output: [runnumber]
20  """
21  runlist=[]
22  try:
23  dbsession.transaction().start(True)
24  schema=dbsession.nominalSchema()
25 
26  query=schema.tableHandle(nameDealer.lumisummaryTableName()).newQuery()
27  query.addToOutputList("RUNNUM","run")
28  query.addToOutputList("LUMIVERSION","lumiversion")
29  queryBind=coral.AttributeList()
30  queryBind.extend("lumiversion","string")
31  if len(lumiversion)!=0:
32  queryBind["lumiversion"].setData(lumiversion)
33  query.setCondition("LUMIVERSION=:lumiversion",queryBind)
34  query.addToOrderList('RUNNUM')
35  result=coral.AttributeList()
36  result.extend("run","unsigned int")
37  result.extend("lumiversion","string")
38  query.defineOutput(result)
39  cursor=query.execute()
40  while cursor.next():
41  r=cursor.currentRow()['run'].data()
42  v=cursor.currentRow()['lumiversion'].data()
43  runlist.append((r,v))
44  del query
45  dbsession.transaction().commit()
46  except Exception,e:
47  print str(e)
48  dbsession.transaction().rollback()
49  del dbsession
50  runlist=listRemoveDuplicate(runlist)
51  runlist.sort()
52  return runlist
Definition: start.py:1
def runListInDB
Definition: lumiData.py:15
def lumisummaryTableName
Definition: nameDealer.py:20
def listRemoveDuplicate
Definition: lumiData.py:9

Variable Documentation

string lumiData.VERSION = '2.00'

Definition at line 2 of file lumiData.py.