Project:
View Issue Details[ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||||||
ID | ||||||||||||
0048977 | ||||||||||||
Type | Category | Severity | Reproducibility | Date Submitted | Last Update | |||||||
defect | [Retail Modules] Web POS | major | have not tried | 2022-04-06 09:36 | 2022-04-06 10:04 | |||||||
Reporter | AugustoMauch | View Status | public | |||||||||
Assigned To | AugustoMauch | |||||||||||
Priority | normal | Resolution | open | Fixed in Version | ||||||||
Status | scheduled | Fix in branch | Fixed in SCM revision | |||||||||
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 | ||||||||||||
Regression level | ||||||||||||
Regression date | ||||||||||||
Regression introduced in release | ||||||||||||
Regression introduced by commit | ||||||||||||
Triggers an Emergency Pack | No | |||||||||||
Summary | 0048977: IndexedDB throttle wait time should be increase to prevent performance impact on user actions | |||||||||||
Description | IndexedDB state persistence process is throttled, meaning that when it is invoked, its execution is delayed a preconfigured wait time and if another execution is done in that wait time, only the second one will be actually executed (unless a third one is done before the wait time, and so on). Currently the wait time is 10 milliseconds, and that is a problem because in practice state persistence is taking place at the same time the posthooks of user actions are executed, and that results in very slow queries because there is a single thread to do IndexedDB queries/updates. We should increase the throttle wait time for the state persistence to try to ensure it takes place outside the context of the current action it is part of. [1] https://gitlab.com/openbravo/product/pmods/org.openbravo.mobile.core/-/blob/master/web/org.openbravo.mobile.core/app/model/application-state/StatePersistence.js#L192 [^] | |||||||||||
Steps To Reproduce | See attached image, it showed what happens when a user action is executed. The pink box on the left is the state action that triggers a state persistence (green long boxes) in 10ms. Right after that, posthooks are executed, and the execution of its queries are delayed until the state persistence finishes. We want the persistence to take place outside the user action context | |||||||||||
Tags | No tags attached. | |||||||||||
Attached Files | statePersistence.png [^] (10,904 bytes) 2022-04-06 10:02
| |||||||||||
Relationships [ Relation Graph ] [ Dependency Graph ] | |
Issue History | |||
Date Modified | Username | Field | Change |
2022-04-06 09:36 | AugustoMauch | New Issue | |
2022-04-06 09:36 | AugustoMauch | Assigned To | => AugustoMauch |
2022-04-06 09:36 | AugustoMauch | Triggers an Emergency Pack | => No |
2022-04-06 10:02 | AugustoMauch | Status | new => scheduled |
2022-04-06 10:02 | AugustoMauch | File Added: statePersistence.png | |
2022-04-06 10:04 | AugustoMauch | Steps to Reproduce Updated | View Revisions |
Copyright © 2000 - 2009 MantisBT Group |