CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
MatrixUtil.InputInfo Class Reference
Inheritance diagram for MatrixUtil.InputInfo:

Public Member Functions

def __init__ (self, dataSet, dataSetParent='', label='', run=[], ls={}, files=1000, events=InputInfoNDefault, split=10, location='CAF', ib_blacklist=None, ib_block=None)
 
def __str__ (self)
 
def das (self, das_options, dataset)
 
def lumiRanges (self)
 
def lumis (self)
 
def queries (self, dataset)
 

Public Attributes

 dataSet
 
 dataSetParent
 
 events
 
 files
 
 ib_blacklist
 
 ib_block
 
 label
 
 location
 
 ls
 
 run
 
 split
 

Detailed Description

Definition at line 105 of file MatrixUtil.py.

Constructor & Destructor Documentation

◆ __init__()

def MatrixUtil.InputInfo.__init__ (   self,
  dataSet,
  dataSetParent = '',
  label = '',
  run = [],
  ls = {},
  files = 1000,
  events = InputInfoNDefault,
  split = 10,
  location = 'CAF',
  ib_blacklist = None,
  ib_block = None 
)

Definition at line 106 of file MatrixUtil.py.

106  def __init__(self,dataSet,dataSetParent='',label='',run=[],ls={},files=1000,events=InputInfoNDefault,split=10,location='CAF',ib_blacklist=None,ib_block=None) :
107  self.run = run
108  self.ls = ls
109  self.files = files
110  self.events = events
111  self.location = location
112  self.label = label
113  self.dataSet = dataSet
114  self.split = split
115  self.ib_blacklist = ib_blacklist
116  self.ib_block = ib_block
117  self.dataSetParent = dataSetParent
118 
def __init__(self, dataset, job_number, job_id, job_name, isDA, isMC, applyBOWS, applyEXTRACOND, extraconditions, runboundary, lumilist, intlumi, maxevents, gt, allFromGT, alignmentDB, alignmentTAG, apeDB, apeTAG, bowDB, bowTAG, vertextype, tracktype, refittertype, ttrhtype, applyruncontrol, ptcut, CMSSW_dir, the_dir)

Member Function Documentation

◆ __str__()

def MatrixUtil.InputInfo.__str__ (   self)

Definition at line 198 of file MatrixUtil.py.

References MatrixUtil.InputInfo.dataSet, MatrixUtil.InputInfo.ib_block, RPCRunIOV::RunIOV_Item.run, RPCDQMObject.run, TB06Reco.run, TB06RecoH2.run, Point.run, BeamSpotRcdReader::theBSfromDB.run, BeamSpotOnlineRecordsReader::theBSOfromDB.run, ME::Header.run, MatrixUtil.InputInfo.run, HitEff.run, cond::RunInfo_t.run, and SiPixelErrorEstimation.run.

Referenced by edmStreamStallGrapher.Point.__repr__(), BeautifulSoup.Tag.__repr__(), BeautifulSoup.Tag.__unicode__(), and BeautifulSoup.Tag.prettify().

198  def __str__(self):
199  if self.ib_block:
200  return "input from: {0} with run {1}#{2}".format(self.dataSet, self.ib_block, self.run)
201  return "input from: {0} with run {1}".format(self.dataSet, self.run)
202 
203 
204 # merge dictionaries, with prioty on the [0] index

◆ das()

def MatrixUtil.InputInfo.das (   self,
  das_options,
  dataset 
)

Definition at line 119 of file MatrixUtil.py.

References MatrixUtil.InputInfo.ib_blacklist, join(), BeamSpotRcdReader::theBSfromDB.ls, BeamSpotOnlineRecordsReader::theBSOfromDB.ls, MatrixUtil.InputInfo.ls, MatrixUtil.InputInfo.lumis(), DB_ME.queries, MatrixUtil.InputInfo.queries(), RPCRunIOV::RunIOV_Item.run, RPCDQMObject.run, TB06Reco.run, TB06RecoH2.run, Point.run, BeamSpotRcdReader::theBSfromDB.run, BeamSpotOnlineRecordsReader::theBSOfromDB.run, ME::Header.run, MatrixUtil.InputInfo.run, HitEff.run, cond::RunInfo_t.run, and SiPixelErrorEstimation.run.

119  def das(self, das_options, dataset):
120  if len(self.run) != 0 or self.ls:
121  queries = self.queries(dataset)
122  if len(self.run) != 0:
123  command = ";".join(["dasgoclient %s --query '%s'" % (das_options, query) for query in queries])
124  else:
125  lumis = self.lumis()
126  commands = []
127  while queries:
128  commands.append("dasgoclient %s --query 'lumi,%s' --format json | das-selected-lumis.py %s " % (das_options, queries.pop(), lumis.pop()))
129  command = ";".join(commands)
130  command = "({0})".format(command)
131  else:
132  command = "dasgoclient %s --query '%s'" % (das_options, self.queries(dataset)[0])
133 
134  # Run filter on DAS output
135  if self.ib_blacklist:
136  command += " | grep -E -v "
137  command += " ".join(["-e '{0}'".format(pattern) for pattern in self.ib_blacklist])
138  from os import getenv
139  if getenv("CMSSW_USE_IBEOS","false")=="true": return command + " | ibeos-lfn-sort"
140  return command + " | sort -u"
141 
static std::string join(char **cmd)
Definition: RemoteFile.cc:19

◆ lumiRanges()

def MatrixUtil.InputInfo.lumiRanges (   self)

Definition at line 142 of file MatrixUtil.py.

References createfilelist.int, join(), relativeConstraints.keys, BeamSpotRcdReader::theBSfromDB.ls, BeamSpotOnlineRecordsReader::theBSOfromDB.ls, MatrixUtil.InputInfo.ls, RPCRunIOV::RunIOV_Item.run, TB06RecoH2.run, TB06Reco.run, RPCDQMObject.run, Point.run, BeamSpotRcdReader::theBSfromDB.run, BeamSpotOnlineRecordsReader::theBSOfromDB.run, ME::Header.run, MatrixUtil.InputInfo.run, HitEff.run, cond::RunInfo_t.run, and SiPixelErrorEstimation.run.

142  def lumiRanges(self):
143  if len(self.run) != 0:
144  return "echo '{\n"+",".join(('"%d":[[1,268435455]]\n'%(x,) for x in self.run))+"}'"
145  if self.ls :
146  return "echo '{\n"+",".join(('"%d" : %s\n'%( int(x),self.ls[x]) for x in self.ls.keys()))+"}'"
147  return None
148 
static std::string join(char **cmd)
Definition: RemoteFile.cc:19

◆ lumis()

def MatrixUtil.InputInfo.lumis (   self)

Definition at line 149 of file MatrixUtil.py.

References join(), relativeConstraints.keys, BeamSpotRcdReader::theBSfromDB.ls, BeamSpotOnlineRecordsReader::theBSOfromDB.ls, MatrixUtil.InputInfo.ls, and str.

Referenced by MatrixUtil.InputInfo.das().

149  def lumis(self):
150  query_lumis = []
151  if self.ls:
152  for run in sorted(self.ls.keys()):
153  run_lumis = []
154  for rng in self.ls[run]:
155  if isinstance(rng, int):
156  run_lumis.append(str(rng))
157  else:
158  run_lumis.append(str(rng[0])+","+str(rng[1]))
159  query_lumis.append(":".join(run_lumis))
160  return query_lumis
161 
static std::string join(char **cmd)
Definition: RemoteFile.cc:19
#define str(s)

◆ queries()

def MatrixUtil.InputInfo.queries (   self,
  dataset 
)

Definition at line 162 of file MatrixUtil.py.

References MatrixUtil.InputInfo.ib_block, relativeConstraints.keys, BeamSpotRcdReader::theBSfromDB.ls, BeamSpotOnlineRecordsReader::theBSOfromDB.ls, MatrixUtil.InputInfo.ls, RPCRunIOV::RunIOV_Item.run, TB06Reco.run, TB06RecoH2.run, RPCDQMObject.run, Point.run, BeamSpotRcdReader::theBSfromDB.run, BeamSpotOnlineRecordsReader::theBSOfromDB.run, ME::Header.run, MatrixUtil.InputInfo.run, HitEff.run, cond::RunInfo_t.run, and SiPixelErrorEstimation.run.

Referenced by MatrixUtil.InputInfo.das().

162  def queries(self, dataset):
163  query_by = "block" if self.ib_block else "dataset"
164  query_source = "{0}#{1}".format(dataset, self.ib_block) if self.ib_block else dataset
165 
166  if self.ls :
167  the_queries = []
168  #for query_run in self.ls.keys():
169  # print "run is %s"%(query_run)
170  # if you have a LS list specified, still query das for the full run (multiple ls queries take forever)
171  # and use step1_lumiRanges.log to run only on LS which respect your selection
172 
173  # DO WE WANT T2_CERN ?
174  return ["file {0}={1} run={2}".format(query_by, query_source, query_run) for query_run in sorted(self.ls.keys())]
175  #return ["file {0}={1} run={2} site=T2_CH_CERN".format(query_by, query_source, query_run) for query_run in self.ls.keys()]
176 
177 
178  #
179  #for a_range in self.ls[query_run]:
180  # # print "a_range is %s"%(a_range)
181  # the_queries += ["file {0}={1} run={2} lumi={3} ".format(query_by, query_source, query_run, query_ls) for query_ls in expandLsInterval(a_range) ]
182  #print the_queries
183  return the_queries
184 
185  site = " site=T2_CH_CERN"
186  if "CMSSW_DAS_QUERY_SITES" in os.environ:
187  if os.environ["CMSSW_DAS_QUERY_SITES"]:
188  site = " site=%s" % os.environ["CMSSW_DAS_QUERY_SITES"]
189  else:
190  site = ""
191  if len(self.run) != 0:
192  return ["file {0}={1} run={2}{3}".format(query_by, query_source, query_run, site) for query_run in self.run]
193  #return ["file {0}={1} run={2} ".format(query_by, query_source, query_run) for query_run in self.run]
194  else:
195  return ["file {0}={1}{2}".format(query_by, query_source, site)]
196  #return ["file {0}={1} ".format(query_by, query_source)]
197 

Member Data Documentation

◆ dataSet

MatrixUtil.InputInfo.dataSet

Definition at line 113 of file MatrixUtil.py.

Referenced by MatrixUtil.InputInfo.__str__().

◆ dataSetParent

MatrixUtil.InputInfo.dataSetParent

Definition at line 117 of file MatrixUtil.py.

◆ events

MatrixUtil.InputInfo.events

◆ files

MatrixUtil.InputInfo.files

◆ ib_blacklist

MatrixUtil.InputInfo.ib_blacklist

Definition at line 115 of file MatrixUtil.py.

Referenced by MatrixUtil.InputInfo.das().

◆ ib_block

MatrixUtil.InputInfo.ib_block

Definition at line 116 of file MatrixUtil.py.

Referenced by MatrixUtil.InputInfo.__str__(), and MatrixUtil.InputInfo.queries().

◆ label

MatrixUtil.InputInfo.label

◆ location

MatrixUtil.InputInfo.location

Definition at line 111 of file MatrixUtil.py.

◆ ls

MatrixUtil.InputInfo.ls

◆ run

MatrixUtil.InputInfo.run

◆ split

MatrixUtil.InputInfo.split

Definition at line 114 of file MatrixUtil.py.