Closed YanzhaoW closed 5 months ago
I can confirm the behaviour.
Just to be sure: The problem is the GetObject, right?
For example running write_data with 18.8 and then read_data with 19, would also fail?
We should write a (failing) test for FairRoot!
For example running write_data with 18.8 and then read_data with 19, would also fail?
Yes, but only if used from more than one task as in his example code. With a single read task it works across versions.
Fixed by #1557
Describe the bug
The usage of
FairRootManager::GetObject
is broken after upgrading to FairRoot 19. This issue only occurs whenGetObject
is called more than once for one branch name. But such practice happens quite often as some branches (like event header) need to be used in different tasks at the same run.This issue doesn't occur in FairRoot 18.8.
To Reproduce
SIMPATH
andFAIRROOTPATH
./write_data
and./read_data
../write_data
and./read_data
.read_task.cpp
, then the output is correct.System information:
Additional context
TTreeReader
used inread.cpp
in the github repo.@dennisklein @ChristianTackeGSI