Project:
View Issue Details[ Jump to Notes ] | [ Issue History ] [ Print ] | |||||||
ID | ||||||||
0045303 | ||||||||
Type | Category | Severity | Reproducibility | Date Submitted | Last Update | |||
defect | [Retail Modules] Web POS | major | always | 2020-10-27 06:35 | 2020-11-18 09:06 | |||
Reporter | marvintm | View Status | public | |||||
Assigned To | aferraz | |||||||
Priority | normal | Resolution | fixed | Fixed in Version | RR21Q1 | |||
Status | closed | 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 | 0045303: Performance of the tax engine can be improved | |||||||
Description | Currently, the ticket calculation performance degrades quite significantly with the number of lines. Almost all the degradation comes from the tax engine, and particularly the call to the OB.Taxes.filterRulesByTicketLine function, which computes which tax rules could be applied to a line. If this was optimised, the performance of the engine, and the ticket calculation speed in general, would improve by a very large amount. | |||||||
Steps To Reproduce | Create a big ticket using "GPS" products (to ensure that all lines have a discount). Realise that after 200 lines, calculating a ticket takes around 1.5 seconds. Do some profiling. Realise that almost all the time is spent in the OB.Taxes.filterRulesByTicketLine function. | |||||||
Proposed Solution | The initial optimisation we are going to try consists in trying to avoid calculating the rules if the line already has them, and the line itself didn't change. | |||||||
Tags | No tags attached. | |||||||
Attached Files | ||||||||
Relationships [ Relation Graph ] [ Dependency Graph ] | ||||||||||||||||||||||
|
Notes | |
(0123966) hgbot (developer) 2020-10-28 08:23 |
Merge Request created: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/137 [^] |
(0124065) hgbot (developer) 2020-10-30 13:11 |
Merge Request created: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/146 [^] |
(0124232) hgbot (developer) 2020-11-09 07:59 |
Merge request closed: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/137 [^] |
(0124233) hgbot (developer) 2020-11-09 08:00 |
Merge Request created: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/157 [^] |
(0124234) hgbot (developer) 2020-11-09 08:02 |
Merge request closed: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/157 [^] |
(0124235) hgbot (developer) 2020-11-09 08:02 |
Merge Request created: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/158 [^] |
(0124432) hgbot (developer) 2020-11-16 19:29 |
Merge Request created: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/185 [^] |
(0124463) hgbot (developer) 2020-11-18 08:30 |
Merge request merged: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/185 [^] |
(0124464) hgbot (developer) 2020-11-18 08:30 |
Directly closing issue as related merge request is already approved. Repository: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal [^] Changeset: be8805f67182617d31cec75865245c446713827b Author: Álvaro Ferraz <alvaro.ferraz@openbravo.com> Date: 2020-11-17T14:27:02+01:00 URL: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/commit/be8805f67182617d31cec75865245c446713827b [^] Fixes ISSUE-45303: Performance of the tax engine can be improved Move maps, filters and sorts not using line information from filterRulesByTicketLine to filterRulesByTicket: - joinRuleAndZone - sortByRegionFrom - sortByCountryFrom - sortByLineno - sortByCascade - sortByTaxBase Move some filters to filterRulesByTicket to reduce the rules sent to filterRulesByTicketLine: - checkTaxCategory, - checkCountry - checkRegion Reorder some filters to apply first the ones more restrictive. --- M web/org.openbravo.retail.posterminal/app/model/business-logic/taxes-engine/engine/tax-engine.js --- |
(0124466) hgbot (developer) 2020-11-18 08:56 |
Merge request closed: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/146 [^] |
(0124467) hgbot (developer) 2020-11-18 08:56 |
Merge request closed: https://gitlab.com/openbravo/product/pmods/org.openbravo.retail.posterminal/-/merge_requests/158 [^] |
Issue History | |||
Date Modified | Username | Field | Change |
2020-10-27 06:35 | marvintm | New Issue | |
2020-10-27 06:35 | marvintm | Assigned To | => Retail |
2020-10-27 06:35 | marvintm | Triggers an Emergency Pack | => No |
2020-10-27 09:36 | marvintm | Status | new => scheduled |
2020-10-27 09:36 | marvintm | Assigned To | Retail => marvintm |
2020-10-28 08:23 | hgbot | Note Added: 0123966 | |
2020-10-30 13:11 | hgbot | Note Added: 0124065 | |
2020-11-09 07:59 | hgbot | Note Added: 0124232 | |
2020-11-09 08:00 | hgbot | Note Added: 0124233 | |
2020-11-09 08:02 | hgbot | Note Added: 0124234 | |
2020-11-09 08:02 | hgbot | Note Added: 0124235 | |
2020-11-16 16:36 | marvintm | Status | scheduled => acknowledged |
2020-11-16 16:36 | marvintm | Status | acknowledged => scheduled |
2020-11-16 19:29 | hgbot | Note Added: 0124432 | |
2020-11-18 08:30 | hgbot | Resolution | open => fixed |
2020-11-18 08:30 | hgbot | Status | scheduled => closed |
2020-11-18 08:30 | hgbot | Note Added: 0124463 | |
2020-11-18 08:30 | hgbot | Fixed in Version | => RR21Q1 |
2020-11-18 08:30 | hgbot | Note Added: 0124464 | |
2020-11-18 08:56 | hgbot | Note Added: 0124466 | |
2020-11-18 08:56 | hgbot | Note Added: 0124467 | |
2020-11-18 09:06 | aferraz | Assigned To | marvintm => aferraz |
2022-03-08 13:25 | aferraz | Relationship added | related to 0048737 |
Copyright © 2000 - 2009 MantisBT Group |