ATLAS Offline Software
Loading...
Searching...
No Matches
python.compareTCTs Namespace Reference

Functions

 compareTreeFiles (rName, vName, details)
 diffPoolFiles (ref, chk, details, toIgnore=['RecoTimingObj_p1_RAWtoESD_timings', 'RecoTimingObj_p1_ESDtoAOD_timings'])
 diffPickleFiles (ref, chk, details)

Variables

 ignoreTrees = set(("CollectionMetadata",))
 nRef = None
 nVal = None
 rRef = None
 rVal = None
 detailsFN = None
list filePattern = []
 sumFileName = None
 refPath = None
 valPath = None
bool diffroot = False
 opts
 args
list allPatterns = []
str msg = "Reference TCT:\n"
 details = open(detailsFN, "w")
 ff = findTCTFiles(refPath,valPath)
 tctlist = ff.getCommonChains()
 statPerChain = dict()
str Summary = ""
int nIdenticalFiles = 0
int nDifferentFiles = 0
 filesToCompare = ff.findFiles(pattern)
 fileName = r.split('/')[-1]
bool identical = False
 r
 v
 stat = os.system("acmd.py diff-root "+r+" "+v+" --error-mode resilient --ignore-leaves HITStoRDO_timings RecoTimingObj_p1_HITStoRDO_timings RecoTimingObj_p1_RAWtoESD_mems RecoTimingObj_p1_RAWtoESD_timings RAWtoESD_mems RAWtoESD_timings ESDtoAOD_mems ESDtoAOD_timings RAWtoALL_mems RAWtoALL_timings RecoTimingObj_p1_RAWtoALL_mems RecoTimingObj_p1_RAWtoALL_timings --entries 10 > tmp.txt")
str complain = ""
float ratio = 100.0*(info[1].loglines-info[0].loglines)/info[0].loglines
str ln = "\tLoglines: %i -> %i (%.2f)" % (info[0].loglines,info[1].loglines,ratio)
 cpu_r = info[0].cpulist[1]
 cpu_v = info[1].cpulist[1]
 mem_r = info[0].memlist[1]
 mem_v = info[1].memlist[1]
bool isok = True
 sumFile = open(sumFileName,"w")
str line = "%-70s" % f

Function Documentation

◆ compareTreeFiles()

python.compareTCTs.compareTreeFiles ( rName,
vName,
details )

Definition at line 16 of file compareTCTs.py.

16def compareTreeFiles(rName,vName,details):
17 if rName.startswith("/castor"):
18 rFile=TFile.Open("root://castoratlas/"+rName)
19 elif rName.startswith("/eos"):
20 rFile=TFile.Open("root://eosatlas.cern.ch/"+rName)
21 else:
22 rFile=TFile.Open(rName)
23
24 if vName.startswith("/castor"):
25 vFile=TFile.Open("root://castoratlas/"+vName)
26 elif vName.startswith("/eos"):
27 vFile=TFile.Open("root://eosatlas.cern.ch/"+vName)
28 else:
29 vFile=TFile.Open(vName)
30
31 if rFile is None:
32 print ("Failed to open reference file",rName)
33 return (0,1)
34
35 if vFile is None:
36 print ("Failed to open validation file",vName)
37 return (0,1)
38
39 rKeys=set()
40 for k in rFile.GetListOfKeys():
41 rKeys.add(k.GetName())
42 vKeys=set()
43 for k in vFile.GetListOfKeys():
44 vKeys.add(k.GetName())
45 #print (rKeys)
46 #print (vKeys)
47 keys=rKeys & vKeys
48 keys -= ignoreTrees
49
50 if len(keys)==0:
51 print ("ERROR no common trees names found in files",rName,vName)
52 return 0
53
54 nGood=0
55 nBad=0
56 for k in keys:
57 rTree=rFile.Get(k)
58 vTree=vFile.Get(k)
59 if not isinstance(rTree,TTree):
60 continue
61 if not isinstance(vTree,TTree):
62 continue
63 print ("Comparing TTree",k)
64 (good,bad)=diffTTree(rTree,vTree,details)
65 nGood+=good
66 nBad+=bad
67 return (nGood,nBad)
68
STL class.

◆ diffPickleFiles()

python.compareTCTs.diffPickleFiles ( ref,
chk,
details )

Definition at line 84 of file compareTCTs.py.

84def diffPickleFiles(ref,chk,details):
85 try:
86 ref_nlines = open(ref).readlines()
87 chk_nlines = open(chk).readlines()
88 if len(ref_nlines) == len(chk_nlines):
89 stat=False
90 print ("same number of lines!")
91 else :
92 print (ref," has ",len(ref_nlines)," lines." )
93 print (chk," has ",len(chk_nlines)," lines.")
94 stat=True
95 #print (ref," has ",len(ref_nlines)," lines." )
96 #print (chk," has ",len(chk_nlines)," lines.")
97 #for refer, check in zip(ref_nlines,chk_nlines):
98 # if refer != check:
99 # print ("Expected %r; got %r " % (refer,check))
100 #stat=False
101 except Exception:
102 stat=True
103 print ("Exception caught while comparinging jobReport(_RecoTrf)?.gpickle files")
104 return stat
105
106

◆ diffPoolFiles()

python.compareTCTs.diffPoolFiles ( ref,
chk,
details,
toIgnore = ['RecoTimingObj_p1_RAWtoESD_timings', 'RecoTimingObj_p1_ESDtoAOD_timings'] )

Definition at line 69 of file compareTCTs.py.

69def diffPoolFiles(ref,chk,details,toIgnore = ['RecoTimingObj_p1_RAWtoESD_timings', 'RecoTimingObj_p1_ESDtoAOD_timings']):
70 import PyUtils.PoolFile as PF
71 try:
72 df = PF.DiffFiles( refFileName = ref, chkFileName = chk, ignoreList = toIgnore)
73 if details is None:
74 df.printSummary()
75 else:
76 df.printSummary(details)
77 stat=df.status()
78 del df
79 except Exception:
80 print ("Exception caught while diff'ing POOL files")
81 stat=True
82 return stat
83

Variable Documentation

◆ allPatterns

list python.compareTCTs.allPatterns = []

Definition at line 185 of file compareTCTs.py.

◆ args

python.compareTCTs.args

Definition at line 124 of file compareTCTs.py.

◆ complain

str python.compareTCTs.complain = ""

Definition at line 288 of file compareTCTs.py.

◆ cpu_r

python.compareTCTs.cpu_r = info[0].cpulist[1]

Definition at line 303 of file compareTCTs.py.

◆ cpu_v

python.compareTCTs.cpu_v = info[1].cpulist[1]

Definition at line 304 of file compareTCTs.py.

◆ details

python.compareTCTs.details = open(detailsFN, "w")

Definition at line 213 of file compareTCTs.py.

◆ detailsFN

python.compareTCTs.detailsFN = None

Definition at line 118 of file compareTCTs.py.

◆ diffroot

python.compareTCTs.diffroot = False

Definition at line 123 of file compareTCTs.py.

◆ ff

python.compareTCTs.ff = findTCTFiles(refPath,valPath)

Definition at line 218 of file compareTCTs.py.

◆ fileName

python.compareTCTs.fileName = r.split('/')[-1]

Definition at line 239 of file compareTCTs.py.

◆ filePattern

list python.compareTCTs.filePattern = []

Definition at line 119 of file compareTCTs.py.

◆ filesToCompare

python.compareTCTs.filesToCompare = ff.findFiles(pattern)

Definition at line 229 of file compareTCTs.py.

◆ identical

python.compareTCTs.identical = False

Definition at line 241 of file compareTCTs.py.

◆ ignoreTrees

python.compareTCTs.ignoreTrees = set(("CollectionMetadata",))

Definition at line 14 of file compareTCTs.py.

◆ isok

bool python.compareTCTs.isok = True

Definition at line 349 of file compareTCTs.py.

◆ line

str python.compareTCTs.line = "%-70s" % f

Definition at line 360 of file compareTCTs.py.

◆ ln

str python.compareTCTs.ln = "\tLoglines: %i -> %i (%.2f)" % (info[0].loglines,info[1].loglines,ratio)

Definition at line 295 of file compareTCTs.py.

◆ mem_r

python.compareTCTs.mem_r = info[0].memlist[1]

Definition at line 327 of file compareTCTs.py.

◆ mem_v

python.compareTCTs.mem_v = info[1].memlist[1]

Definition at line 328 of file compareTCTs.py.

◆ msg

str python.compareTCTs.msg = "Reference TCT:\n"

Definition at line 206 of file compareTCTs.py.

◆ nDifferentFiles

int python.compareTCTs.nDifferentFiles = 0

Definition at line 228 of file compareTCTs.py.

◆ nIdenticalFiles

int python.compareTCTs.nIdenticalFiles = 0

Definition at line 227 of file compareTCTs.py.

◆ nRef

python.compareTCTs.nRef = None

Definition at line 114 of file compareTCTs.py.

◆ nVal

python.compareTCTs.nVal = None

Definition at line 115 of file compareTCTs.py.

◆ opts

python.compareTCTs.opts

Definition at line 124 of file compareTCTs.py.

◆ r

python.compareTCTs.r

Definition at line 243 of file compareTCTs.py.

◆ ratio

float python.compareTCTs.ratio = 100.0*(info[1].loglines-info[0].loglines)/info[0].loglines

Definition at line 294 of file compareTCTs.py.

◆ refPath

python.compareTCTs.refPath = None

Definition at line 121 of file compareTCTs.py.

◆ rRef

python.compareTCTs.rRef = None

Definition at line 116 of file compareTCTs.py.

◆ rVal

python.compareTCTs.rVal = None

Definition at line 117 of file compareTCTs.py.

◆ stat

python.compareTCTs.stat = os.system("acmd.py diff-root "+r+" "+v+" --error-mode resilient --ignore-leaves HITStoRDO_timings RecoTimingObj_p1_HITStoRDO_timings RecoTimingObj_p1_RAWtoESD_mems RecoTimingObj_p1_RAWtoESD_timings RAWtoESD_mems RAWtoESD_timings ESDtoAOD_mems ESDtoAOD_timings RAWtoALL_mems RAWtoALL_timings RecoTimingObj_p1_RAWtoALL_mems RecoTimingObj_p1_RAWtoALL_timings --entries 10 > tmp.txt")

Definition at line 245 of file compareTCTs.py.

◆ statPerChain

python.compareTCTs.statPerChain = dict()

Definition at line 223 of file compareTCTs.py.

◆ sumFile

python.compareTCTs.sumFile = open(sumFileName,"w")

Definition at line 358 of file compareTCTs.py.

◆ sumFileName

python.compareTCTs.sumFileName = None

Definition at line 120 of file compareTCTs.py.

◆ Summary

str python.compareTCTs.Summary = ""

Definition at line 225 of file compareTCTs.py.

◆ tctlist

python.compareTCTs.tctlist = ff.getCommonChains()

Definition at line 219 of file compareTCTs.py.

◆ v

python.compareTCTs.v

Definition at line 244 of file compareTCTs.py.

◆ valPath

python.compareTCTs.valPath = None

Definition at line 122 of file compareTCTs.py.