Openbravo Issue Tracking System - Retail Modules | |||||||||||||||||||||
View Issue Details | |||||||||||||||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||||||||||||||
0030174 | Retail Modules | Web POS | public | 2015-06-13 13:30 | 2015-06-29 09:36 | ||||||||||||||||
Reporter | mtaal | ||||||||||||||||||||
Assigned To | mtaal | ||||||||||||||||||||
Priority | normal | Severity | critical | Reproducibility | have not tried | ||||||||||||||||
Status | closed | Resolution | fixed | ||||||||||||||||||
Platform | OS | 5 | OS Version | ||||||||||||||||||
Product Version | |||||||||||||||||||||
Target Version | RR15Q3 | Fixed in Version | RR15Q3 | ||||||||||||||||||
Merge Request Status | |||||||||||||||||||||
Review Assigned To | marvintm | ||||||||||||||||||||
OBNetwork customer | No | ||||||||||||||||||||
Support ticket | |||||||||||||||||||||
Regression level | |||||||||||||||||||||
Regression date | |||||||||||||||||||||
Regression introduced in release | |||||||||||||||||||||
Regression introduced by commit | |||||||||||||||||||||
Triggers an Emergency Pack | No | ||||||||||||||||||||
Summary | 0030174: Triggers temporarily disabled for whole application through webpos | ||||||||||||||||||||
Description | When running webpos in a high load environment it shows that sometimes triggers are enabled in the middle of the cashup backend code, causing the code to fail (see attached stack trace for an example). What causes this is that the triggers disabled record in AD_SESSION_STATUS gets committed and is visible for other connections, these connections/threads also enable triggers after their work, effectively deleting the AD_SESSION_STATUS record, this again results in the original thread having triggers enabled during processing. Exact flow: Thread 1: does cashup by first disabling triggers and creating AD_SESSION_STATUS record, this record should only be visible to thread 1 as the insert should not be committed. But it is... Thread 1: calls ordergrouping processor which does commit, now everyone sees the new AD_SESSION_STATUS record Thread 2: was already doing work, disabling triggers in his own connection, and then enabling them again, this removes all AD_SESSION_STATUS records visible to the connection of thread 2, this now also includes the AD_SESSION_STATUS record created for thread 1, so AD_SESSION_STATUS for thread 1 also gets deleted. Thread 1: tries to do its remaining work but gets an error because triggers are suddenly enabled again because thread 2 deleted it AD_SESSION_STATUS record. Caused by this change: https://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/4685#l1.361 [^] | ||||||||||||||||||||
Steps To Reproduce | Run stress test simulate business day with 2 nodes and 5 clients each. One run will result in several errors in OBPOS import errors | ||||||||||||||||||||
Proposed Solution | Replace this line: https://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/4685#l1.361 [^] with OBDal.getInstance().flush() Also add a check to the SessionHandler commit code to not allow commits when triggers are enabled. | ||||||||||||||||||||
Additional Information | |||||||||||||||||||||
Tags | No tags attached. | ||||||||||||||||||||
Relationships |
| ||||||||||||||||||||
Attached Files | ![]() https://issues.openbravo.com/file_download.php?file_id=8203&type=bug ![]() https://issues.openbravo.com/file_download.php?file_id=8204&type=bug | ||||||||||||||||||||
Issue History | |||||||||||||||||||||
Date Modified | Username | Field | Change | ||||||||||||||||||
2015-06-13 13:30 | mtaal | New Issue | |||||||||||||||||||
2015-06-13 13:30 | mtaal | Assigned To | => mtaal | ||||||||||||||||||
2015-06-13 13:30 | mtaal | File Added: stack.txt | |||||||||||||||||||
2015-06-13 13:30 | mtaal | OBNetwork customer | => No | ||||||||||||||||||
2015-06-13 13:30 | mtaal | Triggers an Emergency Pack | => No | ||||||||||||||||||
2015-06-13 13:31 | mtaal | File Added: check_triggers_disabled.diff | |||||||||||||||||||
2015-06-13 17:10 | hgbot | Checkin | |||||||||||||||||||
2015-06-13 17:10 | hgbot | Note Added: 0078264 | |||||||||||||||||||
2015-06-13 17:10 | hgbot | Status | new => resolved | ||||||||||||||||||
2015-06-13 17:10 | hgbot | Resolution | open => fixed | ||||||||||||||||||
2015-06-13 17:10 | hgbot | Fixed in SCM revision | => http://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/276b29d81030bb2fa50fabf08ee4470a51d8bc17 [^] | ||||||||||||||||||
2015-06-15 08:26 | alostale | Relationship added | caused by 0029774 | ||||||||||||||||||
2015-06-15 10:44 | hgbot | Checkin | |||||||||||||||||||
2015-06-15 10:44 | hgbot | Note Added: 0078289 | |||||||||||||||||||
2015-06-16 00:37 | hudsonbot | Checkin | |||||||||||||||||||
2015-06-16 00:37 | hudsonbot | Note Added: 0078309 | |||||||||||||||||||
2015-06-29 09:36 | marvintm | Review Assigned To | => marvintm | ||||||||||||||||||
2015-06-29 09:36 | marvintm | Status | resolved => closed | ||||||||||||||||||
2015-06-29 09:36 | marvintm | Fixed in Version | => RR15Q3 | ||||||||||||||||||
2016-01-26 09:56 | AugustoMauch | Relationship added | related to 0029611 |
Notes | |||||
|
|||||
|
|
||||
|
|||||
|
|
||||
|
|||||
|
|