athenaHLT: Write histograms into their own directory for child processes
We were getting basically empty histogram files when running in athenaHLT.py
because the mother overwrote the ROOT file of the children. This MR fixes this by placing the ROOT files into their own directory when running with the offline THistSvc
.
- Add the missing call to
updateDFProps
after the fork to individualize the child properties (e.g. app name). - Use the
IoComponentMgr
to mange the I/O for child processes as done in athenaMP. This creates a sub-directory for each child into which histogram files are being written. - With the above we can run also in
athenaHLT.py
using the offlineTHistSvc
.
TODO: It's not nice that we are creating empty directories in case the
online THistSvc
is used. Can probably add a check on the number of
registered files and if zero, don't bother with the I/O component
manager. But this is for a future MR.