Closed plexoos closed 3 months ago
A couple more findings related to this issue:
There is a circular dependency between Sti and StiCA packages. The original implementation involving the ROOT's ProcessLine() is used to avoid the conflict by loading StiCA (by Sti) at runtime
The same code works with ROOT 6.16 but fails with 6.24
Well, there is a solution for this particular issue with StiCA. It's not pretty but straightforward and the tests don't choke on the line invoking the ROOT interpreter. In short, we can move the code from StiCA into the Sti library in order to avoid the circular dependency, and instantiate a new CA seed finder directly in StiDefaultToolkit. AFAICT, it works but there might be a better approach. The fact that the original code works with 6.16 still bothers me, but the changes between 6.16 and 6.24 can be too significant to investigate further.
On the other hand, the original code loads a couple of libraries at runtime which I am not sure is in agreement with the usual STAR practices.
@fgeurts @genevb @klendathu2k @veprbl for viz.
https://github.com/star-bnl/star-sw/actions/runs/6800427946?pr=619
A number of test jobs (ROOT6.24) failed with the following message:
The offending code appears to be in
StRoot/Sti/StiDefaultToolkit.cxx
where a new seed finder is create via the ROOT interpreter.It is not very clear to me why that statement was chosen to be "interpreted" by ROOT rather than simply compiled. It may help to rewrite the getters in this class. Any objections?