View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0033351 | Open CASCADE | OCCT:Data Exchange | public | 2023-03-27 17:55 | 2023-05-14 17:14 |
Reporter | dpasukhi | Assigned To | dpasukhi | ||
Priority | normal | Severity | major | ||
Status | assigned | Resolution | open | ||
Product Version | 7.7.0 | ||||
Target Version | 7.7.2 | ||||
Summary | 0033351: Data Exchange, Step - Improvement for thread safety of the STEP translator | ||||
Description | The major problem is occt\src\StepData\StepData_GlobalFactors.hxx It is a singleton. We need to make it as a field of session(StepData_StepModel) Additinally All methods and functions that work with StepData_GlobalFactors must have access to the StepData_StepModel This can be done via optional parameter functions (theTP-reading, theFP-writing, theModel, or a value directly from Standard_Real) Or add/use a field in a class of the same type. The reason for this is thread-safety. StepData_GlobalFactors are static fields - containers (singletons) Fix for objects unique to one session - will allow to read step in different threads different files. The next step in this ticket is to isolate all static variables. Isolation is using Standard_mutex ::Lock ::Unlock + Change the type of static controllers to bool | ||||
Tags | No tags attached. | ||||
Test case number | |||||
|
static*[ \n\r]*(Handle\([^\n\)]+\))+[ \n\r]*[a-z,0-9_]+[ \n\r]*\; static*[ \n\r]*[a-z,0-9_]+[ \n\r]*[a-z,0-9_]+[ \n\r]*\; Regex to find static variables |
|
Branch CR33351 has been created by ichesnokova. SHA-1: f8c9407c98cc5daeecba86bfeba8de57c27216d2 Detailed log of new commits: Author: ichesnok Date: Tue Mar 28 13:29:44 2023 +0100 0033351: Data Exchange, Step - Improvement for thread safety of the STEP translator The StepData_GlobalFactors field added to StepData_StepModel. |
Date Modified | Username | Field | Change |
---|---|---|---|
2023-03-27 17:55 | dpasukhi | New Issue | |
2023-03-27 17:55 | dpasukhi | Assigned To | => ichesnokova |
2023-03-28 12:37 | dpasukhi | Status | new => assigned |
2023-03-30 21:19 | dpasukhi | Note Added: 0113343 | |
2023-03-30 21:22 | dpasukhi | Note Edited: 0113343 | |
2023-04-05 00:33 | git | Note Added: 0113361 | |
2023-05-14 17:14 | dpasukhi | Assigned To | ichesnokova => dpasukhi |