Hi, I have come across the following situation. When I ask for a geometry test in a multi threaded simulation, while the test runs fine at the master thread when it is run at the threads there is a crash. The problem was discovered with Geant4 version 10.7.3 and reproduced with version 11.0.2 and is also reported in the following thread https://geant4-forum.web.cern.ch/t/bug-in-geometry-test/8362 Steps to reproduce: 1) Compile B1 basic example 2) Add the command /geometry/test/run after /run/initialize in exampleB1.in macro 3) Run the binary with the exampleB1.in macro The simulation crashes when it tries to run the geometry test on the different threads (it has already run at the master with no problems). It has been tested with the default (Tasking) and MT run manager types, while with Serial there is no crash. Trying to debug a little bit seems that the "flow" before the crash is: G4GeometryMessenger::RecursiveOverlapTest G4GeometryManager::CloseGeometry G4GeometryManager::BuildOptimisations Trying to delete some G4SmartVoxelHeader Best Regards, Michail
Thanks for reporting the problem. Effectively, the process of opening and closing a geometry should be executed only by the master thread and a protection was missing. The fix will be included in the next release and patch.
Please note that this fix is included in the recent patch 3 of Geant4 release 11.0