Openbravo Issue Tracking System - Openbravo ERP | |||||||||||||||||||
View Issue Details | |||||||||||||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||||||||||||
0049524 | Openbravo ERP | 02. Master data management | public | 2022-06-09 16:30 | 2022-06-21 15:54 | ||||||||||||||
Reporter | gorkaion | ||||||||||||||||||
Assigned To | igor_trebol | ||||||||||||||||||
Priority | high | Severity | major | Reproducibility | always | ||||||||||||||
Status | closed | Resolution | fixed | ||||||||||||||||
Platform | OS | 5 | OS Version | ||||||||||||||||
Product Version | |||||||||||||||||||
Target Version | Fixed in Version | PR22Q3 | |||||||||||||||||
Merge Request Status | approved | ||||||||||||||||||
Review Assigned To | |||||||||||||||||||
OBNetwork customer | Gold | ||||||||||||||||||
Web browser | |||||||||||||||||||
Modules | Core | ||||||||||||||||||
Support ticket | 40654 | ||||||||||||||||||
Regression level | |||||||||||||||||||
Regression date | |||||||||||||||||||
Regression introduced in release | |||||||||||||||||||
Regression introduced by commit | |||||||||||||||||||
Triggers an Emergency Pack | No | ||||||||||||||||||
Summary | 0049524: ProductCharacteristicValueEventHandler creates and hold a lock on 100 products | ||||||||||||||||||
Description | The ProductCharacteristicValueEventHandler creates an import entry to run the VariantChDescUpdate process that can hold up to 100 products. When this happens a lock is created on the products that is not released until the VariantChDescUpdate process finishes for all of them. This can create contention on other processes running in parallel modifying the same set of products. This is reproduced on a customer instance running integrations on Characteristics and Products at the same time. Initially a dead-lock was generated. We have fix the product integration to release the lock on the product earlier but now we are having contention cuased by the ProductCharacteristicValueEventHandler/VariantChDescUpdate process. | ||||||||||||||||||
Steps To Reproduce | It is required: 1. A characteristic defined on 100 products. 2. Modify the value of a characteristic so it is required to update the ch description of those products. 3. Check that the VariantChDescUpdate is run and a lock is created for all the products and not released until the process finishes. | ||||||||||||||||||
Proposed Solution | solution 1: Modify VariantChDescUpdateProcessor [1] so a commit is executed on each product update to release the lock. solution 2: Modify ProductCharacteristicValueEventHandler [2]to reduce the Import Entry Size constant to a lower value (1?) or make it configurable. [1] https://gitlab.com/openbravo/product/openbravo/-/blob/master/src/org/openbravo/materialmgmt/VariantChDescUpdateProcessor.java#L64 [^] [2] https://gitlab.com/openbravo/product/openbravo/-/blob/master/src/org/openbravo/event/ProductCharacteristicValueEventHandler.java#L48 [^] | ||||||||||||||||||
Additional Information | |||||||||||||||||||
Tags | NOR | ||||||||||||||||||
Relationships |
| ||||||||||||||||||
Attached Files | |||||||||||||||||||
Issue History | |||||||||||||||||||
Date Modified | Username | Field | Change | ||||||||||||||||
2022-06-09 16:30 | gorkaion | New Issue | |||||||||||||||||
2022-06-09 16:30 | gorkaion | Assigned To | => Triage Omni OMS | ||||||||||||||||
2022-06-09 16:30 | gorkaion | OBNetwork customer | => Gold | ||||||||||||||||
2022-06-09 16:30 | gorkaion | Modules | => Core | ||||||||||||||||
2022-06-09 16:30 | gorkaion | Support ticket | => 40654 | ||||||||||||||||
2022-06-09 16:30 | gorkaion | Triggers an Emergency Pack | => No | ||||||||||||||||
2022-06-14 12:31 | rafaroda | Tag Attached: NOR | |||||||||||||||||
2022-06-15 16:40 | aferraz | Relationship added | related to 0037852 | ||||||||||||||||
2022-06-15 16:41 | aferraz | Assigned To | Triage Omni OMS => igor_trebol | ||||||||||||||||
2022-06-16 13:50 | igor_trebol | Relationship added | related to 0033210 | ||||||||||||||||
2022-06-20 16:07 | hgbot | Merge Request Status | => open | ||||||||||||||||
2022-06-20 16:07 | hgbot | Note Added: 0138570 | |||||||||||||||||
2022-06-20 17:00 | hgbot | Merge Request Status | open => approved | ||||||||||||||||
2022-06-21 15:54 | hgbot | Resolution | open => fixed | ||||||||||||||||
2022-06-21 15:54 | hgbot | Status | new => closed | ||||||||||||||||
2022-06-21 15:54 | hgbot | Fixed in Version | => PR22Q3 | ||||||||||||||||
2022-06-21 15:54 | hgbot | Note Added: 0138596 | |||||||||||||||||
2022-06-21 15:54 | hgbot | Note Added: 0138597 |
Notes | |||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|