Bug #3287
Make reading and writing of parameter file thread safe
Status: | Closed | Start date: | 07/29/2020 | |
---|---|---|---|---|
Priority: | Normal | Due 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.