Fixed uninitialised member variable in InDetDetailedTrackSelectorTool [ATLASRECTS-7384]
Fix irreproducibility encountered in ATLASRECTS-7384
Can go in parallel to !58829 (closed) , both are working fixes
FYI @emoyse
Merge request reports
Activity
added InnerDetector bugfix labels
added master review-pending-level-1 labels
changed title from Fixed initialised member variable in InDetDetailedTrackSelectorTool [ATLASRECTS-7384] to Fixed uninitialised member variable in InDetDetailedTrackSelectorTool [ATLASRECTS-7384]
added urgent label
mentioned in merge request !58829 (closed)
- Resolved by Thomas Strebler
Hey
if(m_useSharedHitInfo && !m_particleCreator.empty()){ if(m_particleCreator.retrieve().isFailure()){ ATH_MSG_INFO(" Unable to retrieve TrackParticleCreatorTool. OK if running on AOD. "<<m_particleCreator); }else{ ATH_MSG_INFO("Track particle creator tool retrieved"); m_partCreatorToolAvailable = true; } }
make me a favour and do
if(m_useSharedHitInfo && !m_particleCreator.empty()){ if(m_particleCreator.retrieve().isFailure()){ ATH_MSG_INFO(" Unable to retrieve TrackParticleCreatorTool. OK if running on AOD. "<<m_particleCreator); }else{ ATH_MSG_INFO("Track particle creator tool retrieved"); m_partCreatorToolAvailable = true; } } else{ m_particleCreator.disable(); m_partCreatorToolAvailable = true; }
one is the flag to now use it later on right" the m_partCreatorToolAvailable. But please also
disable
it ....i.e please have a block that disables if empty ...
Edited by Christos Anastopoulos
CI Result SUCCESS (hash 8f000bd7)Athena externals cmake make tests Full details available on this CI monitor view. Check the JIRA CI status board for known problems
Athena: number of compilation errors 0, warnings 0
For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 62711]The reason I become paranoid is https://acode-browser1.usatlas.bnl.gov/lxr/source/Gaudi/GaudiKernel/src/Lib/Algorithm.cpp#0599
I think this is new to
MT
at large and was different in21.0
More or less this means that if you have not disabled it , it can do a
retrieve
for you. Theretrieve
in initalize isping @ssnyder
i'd still consider it good form to do explicit retrieve's in your initialize().
In some sense the "retrieve" is optinal, the disable less so ...
Also there is one path for
array
one fortool
It should be fine for "empty" the code will do the right thing , but want to cover all ifs.
Edited by Christos AnastopoulosAnyhow @tsulaia as a succeeding CI has been rare Can you put this in
Then we can see of how fixing the logic to make it safer
removed review-pending-level-1 label
added review-approved label
added RC Attention Required label
mentioned in merge request !58843 (merged)
mentioned in commit ab1eb3bc
added sweep:ignore label