Project:
View Issue Details[ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||
ID | ||||||||
0036419 | ||||||||
Type | Category | Severity | Reproducibility | Date Submitted | Last Update | |||
defect | [Openbravo ERP] A. Platform | major | have not tried | 2017-07-05 14:05 | 2017-09-21 16:49 | |||
Reporter | alostale | View Status | public | |||||
Assigned To | alostale | |||||||
Priority | normal | Resolution | fixed | Fixed in Version | 3.0PR17Q4 | |||
Status | closed | Fix in branch | Fixed in SCM revision | 76e0f1c4b33e | ||||
Projection | none | ETA | none | Target Version | ||||
OS | Any | Database | Any | Java version | ||||
OS Version | Database version | Ant version | ||||||
Product Version | SCM revision | |||||||
Review Assigned To | AugustoMauch | |||||||
Web browser | ||||||||
Modules | Core | |||||||
Regression level | ||||||||
Regression date | ||||||||
Regression introduced in release | ||||||||
Regression introduced by commit | ||||||||
Triggers an Emergency Pack | No | |||||||
Summary | 0036419: no request processed while killing abandoned sessions | |||||||
Description | In a professional instance with limited concurrent users, having abandoned sessions it is possible to reach a situation where no request is processed. This can occur if there is a DB lock in the ad_session rows that detected as abandoned. The thread trying to kill them, waits this lock to be released in a synchronized method so no other thread can be processed as they are also waiting this lock to be released. | |||||||
Steps To Reproduce | Couldn't reproduce following standard flows, but it is possible to emulate it: 1. Activate instance with a license limited to 1 concurrent user 2. Create an abandoned session in DB: insert into ad_session ( ad_session_id , ad_client_id , ad_org_id , isactive , created , createdby , updated , updatedby , processed , session_active , last_session_ping, login_status , username) values (get_uuid(), '0', '0', 'Y', now(), '0', now(), '0', 'N', 'Y', now() - 1, 'S', 'test' ) ; 3. Create a lock for that session in DB: begin; select * from ad_session order by created desc limit 1 for update; 4. Try to open login window in several tabs -> None of them is completed | |||||||
Tags | Performance | |||||||
Attached Files | ||||||||
Relationships [ Relation Graph ] [ Dependency Graph ] | |||||||||||||||
|
Notes | |
(0097912) hgbot (developer) 2017-07-06 14:09 |
Repository: erp/devel/pi Changeset: 5aed2a398dac4b1d7d0438eaf6ba27c7eb6bd492 Author: Asier Lostalé <asier.lostale <at> openbravo.com> Date: Wed Jul 05 14:47:20 2017 +0200 URL: http://code.openbravo.com/erp/devel/pi/rev/5aed2a398dac4b1d7d0438eaf6ba27c7eb6bd492 [^] related to bug 36419: no request processed while killing abandoned sessions Deactivate abandoned sessions in a separate DB transaction, in this manner the time locks in ad_session are held is reduced to only this action, before those locks were held till the thread was terminated. --- M src/org/openbravo/erpCommon/obps/ActivationKey.java A src/org/openbravo/erpCommon/obps/ActivationKey_data.xsql --- |
(0097913) hgbot (developer) 2017-07-06 14:10 |
Repository: erp/devel/pi Changeset: 76e0f1c4b33e58b7c413c696f3715e37b60f1ad1 Author: Asier Lostalé <asier.lostale <at> openbravo.com> Date: Thu Jul 06 07:41:00 2017 +0200 URL: http://code.openbravo.com/erp/devel/pi/rev/76e0f1c4b33e58b7c413c696f3715e37b60f1ad1 [^] fixed bug 36419: no request processed while killing abandoned sessions * ActivationKey.getInstance is not synchronized anymore * Synchronization is now reduced to the places changing state * Session deactivation monitored by a lock to ensure there is at most one thread in this block, in this way, at most one thread can be wating for DB lock at this position --- M src/org/openbravo/erpCommon/obps/ActivationKey.java --- |
(0097914) hgbot (developer) 2017-07-06 14:10 |
Repository: erp/devel/pi Changeset: 79ddd2858936e1198dc7cc391563204254f94ae4 Author: Asier Lostalé <asier.lostale <at> openbravo.com> Date: Thu Jul 06 08:11:02 2017 +0200 URL: http://code.openbravo.com/erp/devel/pi/rev/79ddd2858936e1198dc7cc391563204254f94ae4 [^] related to bug 36419: no request processed while killing abandoned sessions Removed synchronization in WS call counter --- M src/org/openbravo/erpCommon/obps/ActivationKey.java --- |
(0097915) hgbot (developer) 2017-07-06 14:10 |
Repository: erp/devel/pi Changeset: 0d877e9b82122f10c66fbce1480723108168a715 Author: Asier Lostalé <asier.lostale <at> openbravo.com> Date: Thu Jul 06 08:21:45 2017 +0200 URL: http://code.openbravo.com/erp/devel/pi/rev/0d877e9b82122f10c66fbce1480723108168a715 [^] related to bug 36419: no request processed while killing abandoned sessions Log stack traces in case of error --- M src/org/openbravo/erpCommon/obps/ActivationKey.java --- |
(0097936) hgbot (developer) 2017-07-07 10:51 |
Repository: erp/devel/pi Changeset: aa2d71ec36788242f39cf46fd2482aea260fe5d8 Author: Augusto Mauch <augusto.mauch <at> openbravo.com> Date: Fri Jul 07 10:34:39 2017 +0200 URL: http://code.openbravo.com/erp/devel/pi/rev/aa2d71ec36788242f39cf46fd2482aea260fe5d8 [^] Related with issue 36419: Fixes typo --- M src/org/openbravo/erpCommon/obps/ActivationKey.java --- |
(0097937) AugustoMauch (administrator) 2017-07-07 10:51 |
Code reviewed and verified in pi@aa2d71ec3678 |
(0099238) hudsonbot (developer) 2017-09-21 16:49 |
A changeset related to this issue has been promoted main and to the Central Repository, after passing a series of tests. Promotion changeset: https://code.openbravo.com/erp/devel/main/rev/9750b78d3e5c [^] Maturity status: Test |
(0099239) hudsonbot (developer) 2017-09-21 16:49 |
A changeset related to this issue has been promoted main and to the Central Repository, after passing a series of tests. Promotion changeset: https://code.openbravo.com/erp/devel/main/rev/9750b78d3e5c [^] Maturity status: Test |
(0099240) hudsonbot (developer) 2017-09-21 16:49 |
A changeset related to this issue has been promoted main and to the Central Repository, after passing a series of tests. Promotion changeset: https://code.openbravo.com/erp/devel/main/rev/9750b78d3e5c [^] Maturity status: Test |
(0099241) hudsonbot (developer) 2017-09-21 16:49 |
A changeset related to this issue has been promoted main and to the Central Repository, after passing a series of tests. Promotion changeset: https://code.openbravo.com/erp/devel/main/rev/9750b78d3e5c [^] Maturity status: Test |
(0099245) hudsonbot (developer) 2017-09-21 16:49 |
A changeset related to this issue has been promoted main and to the Central Repository, after passing a series of tests. Promotion changeset: https://code.openbravo.com/erp/devel/main/rev/9750b78d3e5c [^] Maturity status: Test |
Issue History | |||
Date Modified | Username | Field | Change |
2017-07-05 14:05 | alostale | New Issue | |
2017-07-05 14:05 | alostale | Assigned To | => platform |
2017-07-05 14:05 | alostale | Modules | => Core |
2017-07-05 14:05 | alostale | Triggers an Emergency Pack | => No |
2017-07-06 08:15 | alostale | Tag Attached: Performance | |
2017-07-06 08:29 | alostale | Relationship added | related to 0036425 |
2017-07-06 14:08 | alostale | Assigned To | platform => alostale |
2017-07-06 14:08 | alostale | Review Assigned To | => AugustoMauch |
2017-07-06 14:09 | hgbot | Checkin | |
2017-07-06 14:09 | hgbot | Note Added: 0097912 | |
2017-07-06 14:10 | hgbot | Checkin | |
2017-07-06 14:10 | hgbot | Note Added: 0097913 | |
2017-07-06 14:10 | hgbot | Status | new => resolved |
2017-07-06 14:10 | hgbot | Resolution | open => fixed |
2017-07-06 14:10 | hgbot | Fixed in SCM revision | => http://code.openbravo.com/erp/devel/pi/rev/76e0f1c4b33e58b7c413c696f3715e37b60f1ad1 [^] |
2017-07-06 14:10 | hgbot | Checkin | |
2017-07-06 14:10 | hgbot | Note Added: 0097914 | |
2017-07-06 14:10 | hgbot | Checkin | |
2017-07-06 14:10 | hgbot | Note Added: 0097915 | |
2017-07-07 10:51 | hgbot | Checkin | |
2017-07-07 10:51 | hgbot | Note Added: 0097936 | |
2017-07-07 10:51 | AugustoMauch | Note Added: 0097937 | |
2017-07-07 10:51 | AugustoMauch | Status | resolved => closed |
2017-07-07 10:51 | AugustoMauch | Fixed in Version | => 3.0PR17Q4 |
2017-07-12 12:47 | alostale | Relationship added | blocks 0036477 |
2017-09-21 16:49 | hudsonbot | Checkin | |
2017-09-21 16:49 | hudsonbot | Note Added: 0099238 | |
2017-09-21 16:49 | hudsonbot | Checkin | |
2017-09-21 16:49 | hudsonbot | Note Added: 0099239 | |
2017-09-21 16:49 | hudsonbot | Checkin | |
2017-09-21 16:49 | hudsonbot | Note Added: 0099240 | |
2017-09-21 16:49 | hudsonbot | Checkin | |
2017-09-21 16:49 | hudsonbot | Note Added: 0099241 | |
2017-09-21 16:49 | hudsonbot | Checkin | |
2017-09-21 16:49 | hudsonbot | Note Added: 0099245 |
Copyright © 2000 - 2009 MantisBT Group |