Skip to content

Fix threading issues in HLT prescale loading and improve error handling

Rafal Bielski requested to merge rbielski/athena:fix-prescale-issues-m8 into master

(Probably) fix ATR-23670, i.e. a threading issue and the potentially harmful default behaviour of downstream code upon these issues. Tested locally, but the issue is not reproducible this way and the final validation will happen in the next Technical Run.

Details:

  1. [L1|HLT]PrescaleCondAlg: Use thread-safe insert to add elements to tbb::concurrent_unordered_map instead of operator[] + assignment which is unsafe (not clear from TBB documentation, but this is the second case proving this after !40604 (merged)).
  2. PrescalingTool: Change the default value of KeepUnknownChains to False and the default prescale value to -1. In case KeepUnknownChains==False, print an error when a chain is not found in the prescale set.

cc @mark, @astruebi, @palacino

Merge request reports