Hadd command compatibility between ROOT 6.28 (and below) and 6.30


I have encountered a peculiarity between different ROOT versions and was wondering if there is a work around for this.

When I use the hadd command with version 6.30.02, and then try to open it in an environment where the root version is 6.28.06 (or below), the following message appears a couple times:

Error in <TList::Clear>: A list is accessing an object (0FC39780) already deleted (list name = TList)

The root file then is opened “normally” but a lot of unpredictable behaviour occurs when trying to acces information. That can go from simply other warnings occurring over branches being displayed but then disappearing afterwards to a TTree object not being found at all. This issue only occurs when hadd is being used in one version, and then the resulting root file is being processed through another version.

I imagine that in the future, all environments that I need to use will move to the latest ROOT version, at which point this issue would resolve itself, but with the latest move from CentOS7/8 to AlmaLinux 9 on LXPlus/HTCondor machines, there are some unfortunate constellations in which this issue occurs and the environment is not fully migrated to one where all the software is available in the latest version yet, so I was wondering if there’s something one could do in the meantime.

This seem related to Fix forward compatibility with v6-30 by pcanal · Pull Request #12845 · root-project/root · GitHub
and should have been fixed in v6.28/06 and apriori the only side effect should be potential memory leaks.

So your case seems odd/different.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.