Anonymous | Login
Project:
RSS
  
News | My View | View Issues | Roadmap | Summary

View Issue DetailsJump to Notes ] Issue History ] Print ]
ID
0033162
TypeCategorySeverityReproducibilityDate SubmittedLast Update
defect[Retail Modules] Web POSmajorhave not tried2016-06-06 15:052017-11-30 09:29
ReportershuehnerView Statuspublic 
Assigned Toshuehner 
PrioritynormalResolutionfixedFixed in VersionRR16Q3
StatusclosedFix in branchFixed in SCM revisionfa428be2be90
ProjectionnoneETAnoneTarget Version
OSAnyDatabaseAnyJava version
OS VersionDatabase versionAnt version
Product VersionSCM revision 
Review Assigned Tomarvintm
Regression level
Regression date
Regression introduced in release
Regression introduced by commit
Triggers an Emergency PackNo
Summary

0033162: CashCloseProcessor.createReconciliation missing limit 1 to find last created one (reads all)

DescriptionThe code in createReconciliation wants to read the last reconciliation (ordered b y date) but does not add any limit to query.

so instead it loads all of the entries (for this account) instead of the single entry it needs.
Steps To Reproduce    OBCriteria<FIN_Reconciliation> reconciliationsForAccount = OBDal.getInstance()
        .createCriteria(FIN_Reconciliation.class);
    reconciliationsForAccount.add(Restrictions.eq("account", account));
    reconciliationsForAccount.addOrderBy("creationDate", false);
    List<FIN_Reconciliation> reconciliations = reconciliationsForAccount.list();
    if (reconciliations.size() == 0) {
      startingBalance = account.getInitialBalance();
    } else {
      startingBalance = reconciliations.get(0).getEndingBalance();
    }
Proposed Solutionadd setMaxResults(1)
TagsPerformance
Attached Files

- Relationships Relation Graph ] Dependency Graph ]
depends on backport 0033213RR16Q2.1 closedRetail CashCloseProcessor.createReconciliation missing limit 1 to find last created one (reads all) 

-  Notes
(0087127)
hgbot (developer)
2016-06-09 15:47

Repository: erp/pmods/org.openbravo.retail.posterminal
Changeset: b18bd83d82767561f17fe32d827914fe6f73d9ec
Author: Stefan Hühner <stefan.huehner <at> openbravo.com>
Date: Tue Jun 07 17:08:23 2016 +0200
URL: http://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/b18bd83d82767561f17fe32d827914fe6f73d9ec [^]

Issue 33162. Reformat code before applying fix.

---
M src/org/openbravo/retail/posterminal/CashCloseProcessor.java
---
(0087128)
hgbot (developer)
2016-06-09 15:47

Repository: erp/pmods/org.openbravo.retail.posterminal
Changeset: ee2aa06af166b613e26d63fa3ff302ffce35f4b8
Author: Stefan Hühner <stefan.huehner <at> openbravo.com>
Date: Tue Jun 07 17:10:14 2016 +0200
URL: http://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/ee2aa06af166b613e26d63fa3ff302ffce35f4b8 [^]

Fixed 33162. Add 'limit 1' to query to avoid processing/loading all rows.

The query needs to find the latest FIN_Reconciliations for a account (order by
date) to get its ending balance.
However it did not hav a Limit 1 applied to the query so processes all rows for
this account and loaded all those rows into java memory even when needing only 1.

---
M src/org/openbravo/retail/posterminal/CashCloseProcessor.java
---
(0087136)
shuehner (administrator)
2016-06-09 15:56

Raising to major as without it could trigger very high memory usage depending on number of transaction in the used account.
-> Candidate for backport to Q1 + Q2
(0088191)
hgbot (developer)
2016-07-05 10:09

Repository: retail/backports/3.0RR16Q2.1/org.openbravo.retail.posterminal
Changeset: d6f5c8598ec47453879b1a9486d87c820ec35334
Author: Stefan Hühner <stefan.huehner <at> openbravo.com>
Date: Tue Jun 07 17:08:23 2016 +0200
URL: http://code.openbravo.com/retail/backports/3.0RR16Q2.1/org.openbravo.retail.posterminal/rev/d6f5c8598ec47453879b1a9486d87c820ec35334 [^]

Issue 33162. Reformat code before applying fix.

---
M src/org/openbravo/retail/posterminal/CashCloseProcessor.java
---
(0088192)
hgbot (developer)
2016-07-05 10:09

Repository: retail/backports/3.0RR16Q2.1/org.openbravo.retail.posterminal
Changeset: fa428be2be9030fe1c20d4f44b119552f7a261f6
Author: Stefan Hühner <stefan.huehner <at> openbravo.com>
Date: Tue Jun 07 17:10:14 2016 +0200
URL: http://code.openbravo.com/retail/backports/3.0RR16Q2.1/org.openbravo.retail.posterminal/rev/fa428be2be9030fe1c20d4f44b119552f7a261f6 [^]

Fixed 33162. Add 'limit 1' to query to avoid processing/loading all rows.

The query needs to find the latest FIN_Reconciliations for a account (order by
date) to get its ending balance.
However it did not hav a Limit 1 applied to the query so processes all rows for
this account and loaded all those rows into java memory even when needing only 1.

---
M src/org/openbravo/retail/posterminal/CashCloseProcessor.java
---

- Issue History
Date Modified Username Field Change
2016-06-06 15:05 shuehner New Issue
2016-06-06 15:05 shuehner Assigned To => Retail
2016-06-06 15:05 shuehner Triggers an Emergency Pack => No
2016-06-06 15:05 shuehner Tag Attached: Performance
2016-06-09 15:47 hgbot Checkin
2016-06-09 15:47 hgbot Note Added: 0087127
2016-06-09 15:47 hgbot Checkin
2016-06-09 15:47 hgbot Note Added: 0087128
2016-06-09 15:47 hgbot Status new => resolved
2016-06-09 15:47 hgbot Resolution open => fixed
2016-06-09 15:47 hgbot Fixed in SCM revision => http://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/ee2aa06af166b613e26d63fa3ff302ffce35f4b8 [^]
2016-06-09 15:55 shuehner Assigned To Retail => shuehner
2016-06-09 15:56 shuehner Review Assigned To => marvintm
2016-06-09 15:56 shuehner Note Added: 0087136
2016-06-09 15:56 shuehner Severity minor => major
2016-06-10 09:08 marvintm Status resolved => new
2016-06-10 09:08 marvintm Resolution fixed => open
2016-06-10 09:09 marvintm Status new => scheduled
2016-06-10 09:09 marvintm Status scheduled => resolved
2016-06-10 09:09 marvintm Fixed in Version => RR15Q3
2016-06-10 09:09 marvintm Resolution open => fixed
2016-06-10 09:09 marvintm Status resolved => closed
2016-07-05 10:09 hgbot Checkin
2016-07-05 10:09 hgbot Note Added: 0088191
2016-07-05 10:09 hgbot Checkin
2016-07-05 10:09 hgbot Note Added: 0088192
2016-07-05 10:09 hgbot Status closed => resolved
2016-07-05 10:09 hgbot Fixed in SCM revision http://code.openbravo.com/erp/pmods/org.openbravo.retail.posterminal/rev/ee2aa06af166b613e26d63fa3ff302ffce35f4b8 [^] => http://code.openbravo.com/retail/backports/3.0RR16Q2.1/org.openbravo.retail.posterminal/rev/fa428be2be9030fe1c20d4f44b119552f7a261f6 [^]
2016-07-05 10:11 migueldejuana Status resolved => closed
2017-11-30 09:29 shuehner Fixed in Version RR15Q3 => RR16Q3


Copyright © 2000 - 2009 MantisBT Group
Powered by Mantis Bugtracker