Bug #3287

Make reading and writing of parameter file thread safe

Added by Knödlseder Jürgen over 4 years ago. Updated over 4 years ago.

Status:ClosedStart date:07/29/2020
Priority:NormalDue date:
Assigned To:Knödlseder Jürgen% Done:

100%

Category:-
Target version:1.7.1
Duration:

Description

When running gsrvy an exception occurs sometimes that states that no chatter parameter is found. When inspecting the application parameters they appear in fact empty. It may be that the reading of the parameter file is not thread safe.


Recurrence

No recurrence.

History

#1 Updated by Knödlseder Jürgen over 4 years ago

  • % Done changed from 0 to 50

I put the reading and writing of the parameter file in GApplicationPars::read() and GApplicationPars::write() in an OpenMP critical zone.

#4 Updated by Knödlseder Jürgen over 4 years ago

  • Status changed from New to In Progress

See also #3303.

#5 Updated by Knödlseder Jürgen over 4 years ago

  • Status changed from In Progress to Feedback
  • % Done changed from 50 to 90

Most of the diagnostic information can be found in issue #3303, the solution identified was to put the code in the GApplicationPars::read() and GApplicationPars::write() methods in the same named critical zone so that concurrent read and write operations of different threads are not permitted.

Hope that this fixes the issue now. I set the status of the issue to feedback to see whether the problem has finally stopped (the occurence of the issue is very intermittent, hence a few days of gsrvy runs are needed to conclude with a high probability that the issue was fixed).

#6 Updated by Knödlseder Jürgen over 4 years ago

  • Status changed from Feedback to Closed
  • % Done changed from 90 to 100

I have not seen any problem anymore. Close the issue now.

Also available in: Atom PDF