Openbravo Issue Tracking System - POS2
View Issue Details
0052247POS2Corepublic2023-04-03 18:182023-04-26 16:45
AugustoMauch 
AugustoMauch 
normalmajorhave not tried
closedfixed 
5
 
23Q2 
No
0052247: Reduce the number of times the state is persisted on disk
The state is being persisted way too often, and that might be a cause of some of the performance problems that have an impact on the 'back to the past” state problem.

As part of this issue we will try to reduce the number of times the state is persisted by:

Adding a new property to persisted models if true will trigger a throttled persistence just after the state action takes place

Increasing the length of redux’s default throttle from 100m to a much longer value (i.e. 30s)

This will prevent the state from being persisted on disk every time the user executes any action (log would be generated and TerminalLog is a persisted model state).
-
No tags attached.
blocks defect 0052052 closed AugustoMauch Reduce the number of times the state is persisted on disk 
Issue History
2023-04-26 11:39AugustoMauchTypedefect => backport
2023-04-26 11:39AugustoMauchTarget Version => 23Q2
2023-04-26 16:26hgbotNote Added: 0148945
2023-04-26 16:27hgbotNote Added: 0148946
2023-04-26 16:45hgbotResolutionopen => fixed
2023-04-26 16:45hgbotStatusscheduled => closed
2023-04-26 16:45hgbotNote Added: 0148948
2023-04-26 16:45hgbotFixed in Version => RR23Q2
2023-04-26 16:45hgbotNote Added: 0148949
2023-04-26 16:45hgbotNote Added: 0148951

Notes
(0148945)
hgbot   
2023-04-26 16:26   
Merge Request created: https://gitlab.com/openbravo/product/pmods/org.openbravo.mobile.core/-/merge_requests/503 [^]
(0148946)
hgbot   
2023-04-26 16:27   
Merge Request created: https://gitlab.com/openbravo/product/pmods/org.openbravo.core2/-/merge_requests/1062 [^]
(0148948)
hgbot   
2023-04-26 16:45   
Merge request merged: https://gitlab.com/openbravo/product/pmods/org.openbravo.mobile.core/-/merge_requests/503 [^]
(0148949)
hgbot   
2023-04-26 16:45   
Directly closing issue as related merge request is already approved.

Repository: https://gitlab.com/openbravo/product/pmods/org.openbravo.mobile.core [^]
Changeset: c9261005c71d491f3f6aa9ec0f6c8f84d7e2f577
Author: Augusto Mauch <augusto.mauch@openbravo.com>
Date: 26-04-2023 16:25:51
URL: https://gitlab.com/openbravo/product/pmods/org.openbravo.mobile.core/-/commit/c9261005c71d491f3f6aa9ec0f6c8f84d7e2f577 [^]

Fixes ISSUE-52247: Reduce the number of times the state will be persisted

This fix means to reduce the number of times the application state is persisted (in localStorage, as of now).
Previous behaviour:
* state actions that generate entries in the Messages model are persisted immediately
* other state actions that belong to persisted models are persisted withing a 100ms throttle
* a persistence is forced when logging out

New behaviour:
* state actions that generate entries in the Messages model are persisted immediately (same as before)
* other state actions that belong to persisted models: a) If they its triggerPersistence is set, they are persisted within a 200ms throttle a) If they its triggerPersistence is not set, they are persisted within a 60s throttle (or persisted when any other persistence with higher priority is triggered)
* a persistence is forced when logging out (same as before)
* a persistence is forced when the window is about to be closed/refreshed when the user is logged in

---
M src/org/openbravo/mobile/core/login/MobileCoreLoginUtilsServlet.java
M web-test/model/application-state/State.test.js
M web/org.openbravo.mobile.core/app/model/application-state/State.js
M web/org.openbravo.mobile.core/app/model/application-state/StateAPI.js
M web/org.openbravo.mobile.core/app/model/application-state/StatePersistence.js
M web/org.openbravo.mobile.core/app/model/business-object/remote-server/RemoteServer.js
M web/org.openbravo.mobile.core/app/model/business-object/terminal-log/TerminalLog.js
M web/org.openbravo.mobile.core/source/model/ob-terminal-model.js
---
(0148951)
hgbot   
2023-04-26 16:45   
Merge request merged: https://gitlab.com/openbravo/product/pmods/org.openbravo.core2/-/merge_requests/1062 [^]