details:   https://code.openbravo.com/erp/devel/pi/rev/5406f70dad91
changeset: 29258:5406f70dad91
user:      Alvaro Ferraz <alvaro.ferraz <at> openbravo.com>
date:      Mon Apr 18 17:42:14 2016 +0200
summary:   Fixes issue 32504: Improve performance of Costing process

- Add new column cumcost in M_Costing table
- Make some queries in CostingUtils and CostAdjustmentUtils incremental using 
cumqty and cumcost from current m_costing record to avoid sum every record in 
m_transaction and m_transaction_cost tables.
- Avoid join m_transaction with m_locator if current costing rule has no 
warehouse dimension.
- Improve CostingServer checkCostAdjustments method to do query only if needed.
- Avoid count query in CostingBackground process.
- Add indexes in m_costing table: (m_product_id, datefrom, dateto) and 
(m_transaction_id).
- Change in AverageCostAdjustment: cost will be taken from trxPrice in case 
current stock is zero.
- Update cumqty column name to cumstock in M_Costing table to set it as NULL 
and delete it in F&B International Group and QA Testing clients sampledata.
- Assert new m_costing cumcost column in TestCosting.

details:   https://code.openbravo.com/erp/devel/pi/rev/3a6d42921cb6
changeset: 29259:3a6d42921cb6
user:      Alvaro Ferraz <alvaro.ferraz <at> openbravo.com>
date:      Wed Apr 13 16:32:27 2016 +0200
summary:   Related to issue 32504: Add some sleeps in TestCosting to avoid 
assert errors

diffstat:

 referencedata/sampledata/F_B_International_Group/M_COSTING.xml |  1415 
----------
 referencedata/sampledata/QA_Testing/M_COSTING.xml              |    55 -
 src-db/database/model/tables/M_COSTING.xml                     |    20 +-
 src-db/database/sourcedata/AD_COLUMN.xml                       |    52 +-
 src-db/database/sourcedata/AD_ELEMENT.xml                      |    12 +
 src-db/database/sourcedata/AD_FIELD.xml                        |    29 +-
 src-test/src/org/openbravo/test/costing/TestCosting.java       |    52 +-
 src/org/openbravo/costing/AverageAlgorithm.java                |     9 +-
 src/org/openbravo/costing/AverageCostAdjustment.java           |    31 +-
 src/org/openbravo/costing/CostAdjustmentUtils.java             |   131 +-
 src/org/openbravo/costing/CostingBackground.java               |    88 +-
 src/org/openbravo/costing/CostingMigrationProcess.java         |     1 -
 src/org/openbravo/costing/CostingServer.java                   |    50 +-
 src/org/openbravo/costing/CostingUtils.java                    |   143 +-
 src/org/openbravo/costing/InventoryAmountUpdateProcess.java    |     7 +-
 15 files changed, 461 insertions(+), 1634 deletions(-)

diffs (truncated from 13040 to 300 lines):

diff -r 112bc5f8f2c6 -r 3a6d42921cb6 
referencedata/sampledata/F_B_International_Group/M_COSTING.xml
--- a/referencedata/sampledata/F_B_International_Group/M_COSTING.xml    Wed Apr 
20 19:58:48 2016 +0200
+++ b/referencedata/sampledata/F_B_International_Group/M_COSTING.xml    Wed Apr 
13 16:32:27 2016 +0200
@@ -14,7 +14,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[5000.00]]></QTY>
   <PRICE><![CDATA[3.75]]></PRICE>
-  <CUMQTY><![CDATA[1137900.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[3.78]]></COST>
@@ -38,7 +37,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[15000]]></QTY>
   <PRICE><![CDATA[3.55]]></PRICE>
-  <CUMQTY><![CDATA[207030.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[3.55]]></COST>
@@ -62,7 +60,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[75000.00]]></QTY>
   <PRICE><![CDATA[0.55]]></PRICE>
-  <CUMQTY><![CDATA[328530.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.55]]></COST>
@@ -86,7 +83,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[2000.00]]></QTY>
   <PRICE><![CDATA[3.55]]></PRICE>
-  <CUMQTY><![CDATA[17200.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[3.55]]></COST>
@@ -110,7 +106,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[65400.00]]></QTY>
   <PRICE><![CDATA[0.99]]></PRICE>
-  <CUMQTY><![CDATA[371478.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.99]]></COST>
@@ -134,7 +129,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[12000]]></QTY>
   <PRICE><![CDATA[0.75]]></PRICE>
-  <CUMQTY><![CDATA[660680.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.75]]></COST>
@@ -158,7 +152,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[2000.00]]></QTY>
   <PRICE><![CDATA[1.76]]></PRICE>
-  <CUMQTY><![CDATA[4900.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[1.73]]></COST>
@@ -183,7 +176,6 @@
   <M_INOUTLINE_ID><![CDATA[26817224952A4670AC9432778F34394C]]></M_INOUTLINE_ID>
   <QTY><![CDATA[1500]]></QTY>
   <PRICE><![CDATA[3.55]]></PRICE>
-  <CUMQTY><![CDATA[9850]]></CUMQTY>
   <COSTTYPE><![CDATA[AV]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[3.55]]></COST>
@@ -206,7 +198,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[1000.00]]></QTY>
   <PRICE><![CDATA[1.02]]></PRICE>
-  <CUMQTY><![CDATA[184650.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[1.02]]></COST>
@@ -230,7 +221,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[10000]]></QTY>
   <PRICE><![CDATA[0.55]]></PRICE>
-  <CUMQTY><![CDATA[225992.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.55]]></COST>
@@ -254,7 +244,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[2000.00]]></QTY>
   <PRICE><![CDATA[1.76]]></PRICE>
-  <CUMQTY><![CDATA[8600.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[1.75]]></COST>
@@ -278,7 +267,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[67000.00]]></QTY>
   <PRICE><![CDATA[1.76]]></PRICE>
-  <CUMQTY><![CDATA[282200.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[1.50]]></COST>
@@ -302,7 +290,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[70000.00]]></QTY>
   <PRICE><![CDATA[0.55]]></PRICE>
-  <CUMQTY><![CDATA[420432.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.55]]></COST>
@@ -326,7 +313,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[100000.00]]></QTY>
   <PRICE><![CDATA[0.55]]></PRICE>
-  <CUMQTY><![CDATA[592361.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.55]]></COST>
@@ -350,7 +336,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[1000.00]]></QTY>
   <PRICE><![CDATA[0.55]]></PRICE>
-  <CUMQTY><![CDATA[568920.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.56]]></COST>
@@ -375,7 +360,6 @@
   <M_INOUTLINE_ID><![CDATA[A678FD193A564C46A955770ABB9BA17B]]></M_INOUTLINE_ID>
   <QTY><![CDATA[75000]]></QTY>
   <PRICE><![CDATA[5.51]]></PRICE>
-  <CUMQTY><![CDATA[75000]]></CUMQTY>
   <COSTTYPE><![CDATA[AV]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[5.51]]></COST>
@@ -398,7 +382,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[2000.00]]></QTY>
   <PRICE><![CDATA[3.55]]></PRICE>
-  <CUMQTY><![CDATA[17700.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[3.55]]></COST>
@@ -422,7 +405,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[10000]]></QTY>
   <PRICE><![CDATA[1.36]]></PRICE>
-  <CUMQTY><![CDATA[169100.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[1.36]]></COST>
@@ -446,7 +428,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[10000]]></QTY>
   <PRICE><![CDATA[3.45]]></PRICE>
-  <CUMQTY><![CDATA[218170.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[3.46]]></COST>
@@ -471,7 +452,6 @@
   <M_INOUTLINE_ID><![CDATA[A3045B8E17FA43C281E2DD99B4D84C20]]></M_INOUTLINE_ID>
   <QTY><![CDATA[15200]]></QTY>
   <PRICE><![CDATA[0.75]]></PRICE>
-  <CUMQTY><![CDATA[49292]]></CUMQTY>
   <COSTTYPE><![CDATA[AV]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.75]]></COST>
@@ -494,7 +474,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[76000.00]]></QTY>
   <PRICE><![CDATA[0.55]]></PRICE>
-  <CUMQTY><![CDATA[398032.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.55]]></COST>
@@ -518,7 +497,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[1000.00]]></QTY>
   <PRICE><![CDATA[0.55]]></PRICE>
-  <CUMQTY><![CDATA[38000.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.55]]></COST>
@@ -542,7 +520,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[180780]]></QTY>
   <PRICE><![CDATA[1.76]]></PRICE>
-  <CUMQTY><![CDATA[260780]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[1.76]]></COST>
@@ -566,7 +543,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[10000]]></QTY>
   <PRICE><![CDATA[0.75]]></PRICE>
-  <CUMQTY><![CDATA[10000.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.75]]></COST>
@@ -590,7 +566,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[2000.00]]></QTY>
   <PRICE><![CDATA[3.75]]></PRICE>
-  <CUMQTY><![CDATA[114800.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[3.75]]></COST>
@@ -614,7 +589,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[10000]]></QTY>
   <PRICE><![CDATA[0.75]]></PRICE>
-  <CUMQTY><![CDATA[20000.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.75]]></COST>
@@ -638,7 +612,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[4000.00]]></QTY>
   <PRICE><![CDATA[1.36]]></PRICE>
-  <CUMQTY><![CDATA[184350.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[1.36]]></COST>
@@ -662,7 +635,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[164500]]></QTY>
   <PRICE><![CDATA[0.76]]></PRICE>
-  <CUMQTY><![CDATA[913688.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.76]]></COST>
@@ -686,7 +658,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[1000.00]]></QTY>
   <PRICE><![CDATA[0.75]]></PRICE>
-  <CUMQTY><![CDATA[32200.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.75]]></COST>
@@ -710,7 +681,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[118000.00]]></QTY>
   <PRICE><![CDATA[-0.1700]]></PRICE>
-  <CUMQTY><![CDATA[180500.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[-0.17]]></COST>
@@ -734,7 +704,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[1000.00]]></QTY>
   <PRICE><![CDATA[0.55]]></PRICE>
-  <CUMQTY><![CDATA[32000.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.55]]></COST>
@@ -758,7 +727,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[50000.00]]></QTY>
   <PRICE><![CDATA[1.02]]></PRICE>
-  <CUMQTY><![CDATA[941800.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[1.03]]></COST>
@@ -782,7 +750,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[7000]]></QTY>
   <PRICE><![CDATA[3.55]]></PRICE>
-  <CUMQTY><![CDATA[491180.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[3.55]]></COST>
@@ -806,7 +773,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[2000.00]]></QTY>
   <PRICE><![CDATA[0.55]]></PRICE>
-  <CUMQTY><![CDATA[8100.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.54]]></COST>
@@ -830,7 +796,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[80000.00]]></QTY>
   <PRICE><![CDATA[0.75]]></PRICE>
-  <CUMQTY><![CDATA[482900.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.75]]></COST>
@@ -854,7 +819,6 @@
   <ISMANUAL><![CDATA[N]]></ISMANUAL>
   <QTY><![CDATA[1000.00]]></QTY>
   <PRICE><![CDATA[0.75]]></PRICE>
-  <CUMQTY><![CDATA[139210.00]]></CUMQTY>
   <COSTTYPE><![CDATA[AVA]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.75]]></COST>
@@ -879,7 +843,6 @@
   <M_INOUTLINE_ID><![CDATA[274735E7A0ED483CAFD3558A3BB47324]]></M_INOUTLINE_ID>
   <QTY><![CDATA[2100]]></QTY>
   <PRICE><![CDATA[0.89]]></PRICE>
-  <CUMQTY><![CDATA[9600]]></CUMQTY>
   <COSTTYPE><![CDATA[AV]]></COSTTYPE>
   <ISPERMANENT><![CDATA[Y]]></ISPERMANENT>
   <COST><![CDATA[0.89]]></COST>
@@ -902,7 +865,6 @@

------------------------------------------------------------------------------
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to