Problem 1590

Summary: break from the application with optical processes in multi-threading mode
Product: Geant4 Reporter: Ivana.Hrivnacova
Component: trackAssignee: asai
Status: RESOLVED FIXED    
Severity: major CC: andrea.dotti
Priority: P5    
Version: 10.0   
Hardware: PC   
OS: Linux   
Attachments: tar file with modified macro and gdb outputs

Description Ivana.Hrivnacova 2014-03-12 10:01:56 CET
Created attachment 257 [details]
tar file with modified macro and gdb outputs

We are getting break in Geant4 VMC test which defines the same setup as the extended OpNovice example when running in multi-threading mode.
The break can be reproduced with OpNovice example with modified test macro as attached and changing the verbosity level fVerboseLevel=0 in OpNovicePhysicsList.cc.

I attach the GDB back trace from OpNovice example (bt.txt) and also from Geant4 VMC example (bt_vmc.txt). They are a bit different, but both point at the updating the GROUPVEL material properties table in tracking.

The test was performed with Geant4 10.00.p01, run with 8 threads.
Comment 1 Vladimir.Ivantchenko 2014-03-15 19:53:24 CET
Hello,

if bug happens in optical physics then it should be assigned to Peter Gumplinger to category processes/optical

VI
Comment 2 gum 2014-03-18 01:02:31 CET
I suspect this has to do with:

G4Track::CalculateVelocityForOpticalPhoton()

which uses:

     groupvel = mat->GetMaterialPropertiesTable()->GetProperty("GROUPVEL");
     groupvel->Value(current_momentum);
Comment 3 asai 2014-04-28 20:53:59 CEST
A race condition issue was identified in G4MaterialPropertyTable class and fixed.