Open hakonhagland opened 4 months ago
These tests works of course fine when not building shared libraries. Since the Jenkin build is not using shared libraries when testing the Python bindings, this issue could have been present for a long time.
@blattms Could this issue be related to #5358 ?
Assertion `FluidSystem::phaseIsActive(waterPhaseIdx)' failed.
I suspect this is an issue with static variables in shared libraries (opmsimulators.so, opmcommon.so). More specifically the static variable phaseIsActive_
in class BlackOilFluidSystem
, see line 38 in BlackOilFluidSystem.hpp
in opm-common, seems to suddenly change address in GDB.
the static variable phaseIsActive_ in class BlackOilFluidSystem seems to suddenly change address in GDB.
It appears that static variable is undefined in libopmcommon.so:
$ nm -D lib/libopmcommon.so | grep phaseIsActive_ | c++filt
0000000002cd8681 u Opm::BlackOilFluidSystem<double, Opm::BlackOilDefaultIndexTraits>::phaseIsActive_
0000000002cd8685 u Opm::BlackOilFluidSystem<float, Opm::BlackOilDefaultIndexTraits>::phaseIsActive_
which might be the problem.
I have also reported problems in #5322. Is this the same assertion here?
@blattms Could this issue be related to #5358 ?
I am not expert, but it seems to look different to me.
@blattms I think issue should be solved by https://github.com/OPM/opm-common/pull/4087
Thanks a lot for the fix.
On Ubuntu 23.10 I tested Python bindings using shared libraries like this:
Then, after the build completed: