Turn on PhysVal Example by default
Following !72811 (merged) the event counting for NTUP_PHYSVAL has been updated to rely on the EventInfo/EventInfo_actualInteractionsPerCrossing
, which is only created if PHYSVAL is run with --validationFlags doExample
. Turn on by default this flag to be present in all existing PHYSVAL configs.
Also updates general PhysValMonitoringCfg
to only update the tools based on flags, in case no tool is provided as input, otherwise this would badly interact with standalone PhysVal configs, running on AOD where collections added only in derivation, such as jets, are not present but used by the PhysValExample tool for object counting.
Fixes
PhysicsValidation 20:54:41 =====================================================
PhysicsValidation 20:54:41 Message Source | Level | Count
PhysicsValidation 20:54:41 -----------------------------+---------+-------------
PhysicsValidation 20:54:41 PhysValMonManager.JetTagDQA::PhysValBTag| INFO | 1777
PhysicsValidation 20:54:41 =====================================================
PhysicsValidation 20:54:41 leaving with code 0: "successful run"
PyJobTransforms.trfExe.execute 2024-07-09 20:54:41,418 INFO PhysicsValidation executor returns 0
PyJobTransforms.trfExe.validate 2024-07-09 20:54:42,428 INFO Executor PhysicsValidation validated successfully (return code 0)
PyJobTransforms.trfArgClasses._readMetadata 2024-07-09 20:54:42,428 INFO Metadata generator called to obtain nentries for ('NTUP_BTAG_PHYSVAL.root',)
[3423104] Traceback (most recent call last):
[3423104] File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyUtils/Decorators.py", line 58, in wrapper
[3423104] result = func(*args, **kwargs)
[3423104] ^^^^^^^^^^^^^^^^^^^^^
[3423104] File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfFileUtils.py", line 269, in PHYSVALEntries
[3423104] return int(aipc.GetEntries())
[3423104] ^^^^^^^^^^^^^^^
[3423104] AttributeError: 'TObject' object has no attribute 'GetEntries'
PyJobTransforms.trfDecorators.exception_wrapper 2024-07-09 20:54:45,625 CRITICAL Got a general exception in the outer exception handler: (AttributeError("'TObject' object has no attribute 'GetEntries'"), None)
PyJobTransforms.trfDecorators.exception_wrapper 2024-07-09 20:54:45,625 CRITICAL Stack trace is...
PyJobTransforms.trfDecorators.exception_wrapper 2024-07-09 20:54:45,630 CRITICAL Traceback (most recent call last):
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfDecorators.py", line 69, in exception_wrapper
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfDecorators.py", line 126, in signal_wrapper
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/share/Derivation_tf.py", line 27, in main
trf.execute()
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/transform.py", line 463, in execute
executor.validate()
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfExe.py", line 1319, in validate
super(athenaExecutor, self).validate()
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfExe.py", line 830, in validate
checkcount=trfValidation.eventMatch(self)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfValidation.py", line 965, in __init__
self.configureCheck(override=False)
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfValidation.py", line 997, in configureCheck
self._outEventDict[dataTypeName] = self._executor.conf.dataDictionary[dataTypeName].nentries
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfArgClasses.py", line 887, in nentries
return self.getnentries()
^^^^^^^^^^^^^^^^^^
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfArgClasses.py", line 893, in getnentries
events = self.getSingleMetadata(fname=fname, metadataKey='nentries', populate = not fast)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfArgClasses.py", line 989, in getSingleMetadata
md = self.getMetadata(files = fname, metadataKeys = metadataKey, populate = populate, flush = flush)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfArgClasses.py", line 963, in getMetadata
self._readMetadata(files, metadataKeys)
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfArgClasses.py", line 1025, in _readMetadata
self._metadataKeys[key](files)
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyJobTransforms/trfArgClasses.py", line 1716, in _getNumberOfEvents
myPHYSVALEntries = PHYSVALEntries(fileName=fname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyUtils/Decorators.py", line 52, in wrapper
_reraise_exception(remote_exc)
File "/cvmfs/atlas-nightlies.cern.ch/repo/sw/main_Athena_x86_64-el9-gcc13-opt/2024-07-08T2101/Athena/25.0.11/InstallArea/x86_64-el9-gcc13-opt/python/PyUtils/Decorators.py", line 21, in _reraise_exception
raise new_exc.__class__ (new_exc, tb)
AttributeError: (AttributeError("'TObject' object has no attribute 'GetEntries'"), None)
PyJobTransforms.trfDecorators.exception_wrapper 2024-07-09 20:54:45,630 CRITICAL Job reports are likely to be missing or incomplete - sorry
PyJobTransforms.trfDecorators.exception_wrapper 2024-07-09 20:54:45,630 CRITICAL Please report this as a transforms bug!
Edited by Thomas Strebler