Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0015871Openbravo ERPI. Performancepublic2011-02-07 12:052011-05-18 11:25
jonalegriaesarte 
mirurita 
urgentmajoralways
closedfixed 
5
2.50MP26 
 
Advanced Payables and Receivables Mngmt
No
0015871: Performace problem when launching update.database -Dforce=true due to the module script
There is a performance problem when launching update.database -Dforce=true due to the APRM's module script.

The problem appears when you define a big number of organizations (400 in this case) and you open periods to each organization (the problem appears when you open 5 periods to 5 organizations). The problem is in the insertPeriod method in file modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/CreateAccountingConfiguration_data.xsql, because this method is trying to insert a big amount of data, and the select to obtain the data takes much time.
We think that the insert could be changed as follows:

INSERT INTO c_periodcontrol(
                c_periodcontrol_id, ad_client_id, ad_org_id, isactive,
     created,
                createdby, updated, updatedby, c_period_id, docbasetype,
     periodstatus,
                periodaction, processing)
     select c_period.ad_client_id as ad_client_id, a.ad_org_id, 'Y',
     now(),
          '100', now(), '100', c_period.c_period_id, ad_ref_list.value
          , 'C' as status
          ,'N', 'N'
     from c_period
     , c_year,
     (select ad_org_id from ad_org where isperiodcontrolallowed = 'Y') a,
     ad_ref_list
     where c_period.c_year_id = c_year.c_year_id
     and c_year.c_calendar_id in (select c_calendar_id from ad_org
                where ad_org_id = ad_org_getcalendarowner(a.ad_org_id))
     and ad_ref_list.isactive='Y'
     and ad_ref_list.ad_reference_id = '183'
     and not exists (select 1
                from c_periodcontrol
                where c_periodcontrol.c_period_id = c_period.c_period_id
                and c_periodcontrol.docbasetype = ad_ref_list.value
                and c_periodcontrol.ad_org_id = a.ad_org_id)
     group by c_period.c_period_id, c_period.ad_client_id,
     ad_ref_list.value,
     a.ad_org_id
No tags attached.
depends on backport 0016117 closed mirurita Performace problem when launching update.database -Dforce=true due to the module script 
Issue History
2011-02-07 12:05jonalegriaesarteNew Issue
2011-02-07 12:05jonalegriaesarteAssigned To => eduardo_Argal
2011-02-07 12:05jonalegriaesarteModules => Advanced Payables and Receivables Mngmt
2011-02-07 12:09jonalegriaesarteIssue Monitored: networkb
2011-02-09 12:24jonalegriaesarteSummaryPerformace problem when launching update.database -Dforce=true due to the config script => Performace problem when launching update.database -Dforce=true due to the module script
2011-02-09 12:24jonalegriaesarteDescription Updatedbug_revision_view_page.php?rev_id=1498#r1498
2011-03-03 11:44miruritaAssigned Toeduardo_Argal => mirurita
2011-03-03 11:44miruritaStatusnew => scheduled
2011-03-03 11:44miruritafix_in_branch => pi
2011-03-07 10:17hgbotCheckin
2011-03-07 10:17hgbotNote Added: 0034595
2011-03-07 10:17hgbotStatusscheduled => resolved
2011-03-07 10:17hgbotResolutionopen => fixed
2011-03-07 10:17hgbotFixed in SCM revision => http://code.openbravo.com/erp/devel/pi/rev/7da8e24d6950d7b1fd3b3b5f44e7749c5a5c2b6c [^]
2011-05-18 11:25eduardo_ArgalStatusresolved => closed

Notes
(0034595)
hgbot   
2011-03-07 10:17   
Repository: erp/devel/pi
Changeset: 7da8e24d6950d7b1fd3b3b5f44e7749c5a5c2b6c
Author: Mikel Irurita <mikel.irurita <at> openbravo.com>
Date: Mon Mar 07 10:16:23 2011 +0100
URL: http://code.openbravo.com/erp/devel/pi/rev/7da8e24d6950d7b1fd3b3b5f44e7749c5a5c2b6c [^]

[APRM] Fixes issue 15871: improve performace modulescript CreateAccountingConfiguration

---
M modules/org.openbravo.advpaymentmngt/build/classes/org/openbravo/advpaymentmngt/modulescript/CreateAccountingConfigurationData.class
M modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/org/openbravo/advpaymentmngt/modulescript/CreateAccountingConfiguration_data.xsql
M modules/org.openbravo.advpaymentmngt/src-util/modulescript/src/src/org/openbravo/advpaymentmngt/modulescript/CreateAccountingConfigurationData.java
M src-db/database/model/tables/C_PERIODCONTROL.xml
---