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. 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.