Skip to content

Dual-Use Tool Configuration Change, master branch (2023.02.03.)

Removed the asg::AsgToolConfig member from asg::AsgComponentConfig for fixing ATLASG-2456.

Since asg::AsgToolConfig inherits from asg::AsgComponentConfig, this was a very strange circular dependency so far. But luckily asg::AsgComponentConfig only needs to use the asg::AsgToolConfig type in AsgComponentConfig.cxx, and even there only in a single place. So constructing an AsgToolConfig object in place is not supposed to be a big performance issue.

I did not do a full build of AnalysisBase with this change, but since the changed variable is a private one, hopefully this will not have far reaching effects. Though it's not impossible that it would...

@krumnack, of course this will need your blessing as well. Note that with this code I can run @zmarshal's test fine:

Singularity> ./build/CMakeFiles/atlas_build_run.sh eventloop_grid_merge input_files/jobdef.root new.user.khamano.32161702._000002.hist-output.root input_files/panda.um.user.khamano.32161702._000002.hist-output.root 
xAOD::Init                INFO    Environment initialised for data access
TStreamerInfo::Build      WARNING pair<string,tuple<asg::AsgToolConfig,string> >: tuple<asg::AsgToolConfig,string> has no streamer or dictionary, data member "second" will not be saved
hadd Target file: new.user.khamano.32161702._000002.hist-output.root
hadd compression setting for all output: 1
hadd Source file 1: input_files/panda.um.user.khamano.32161702._000002.hist-output.root
hadd Target path: new.user.khamano.32161702._000002.hist-output.root:/
Warning in <TList::Merge>: input list is empty - nothing to merge with
Singularity>

Though this is also a bit of a cheat. 😦 Notice the warning about the missing tuple<asg::AsgToolConfig,string> dictionary. If I add a dictionary for both std::map<std::string, std::tuple<asg::AsgComponentConfig, std::string> > and std::map<std::string, std::tuple<asg::AsgToolConfig, std::string> > to try to get an automatic schema evolution working, then the merge job still dies. So here I really just hope that once the input files will be created with this MR included, even this warning will disappear from the merge jobs. 🤔

Merge request reports