Fix and improve HLT framework error handling
The changes made in this MR are:
-
Add
--removeRobs
option to trigbs_modifyEvent.py which is useful for testing the handling of errors which prompted this MR. Tested by running with this option and then examining the output file with dump-eformat-data.py. -
Fix a bug in the MaxFrameworkErrors option of the HltEventLoopMgr. Contrary to the description, negative values did not mean infinite number of tolerable errors. Now the code does what the description says. Also increase the default value of MaxFrameworkErrors from 0 to 10. Tested by running athenaHLT on a file with removed CTP ROBs (produced with the newly addded removeRobs option) which triggers a framework error (failure in TrigCOOLUpdateHelper).
-
Improve exception handling in TrigCOOLUpdateHelper and HltEventLoopMgr by adding an extra try-catch block in each. Tested by running athenaHLT after inserting a
throw
inHltROBDataProviderSvc::getROBData
.