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

View Issue DetailsJump to Notes ] Issue History ] Print ]
ID
0036368
TypeCategorySeverityReproducibilityDate SubmittedLast Update
defect[Openbravo ERP] 07. Sales managementmajoralways2017-06-28 12:552017-06-29 13:03
Reportereduardo_ArgalView Statuspublic 
Assigned ToTriage Omni OMS 
PriorityurgentResolutionfixedFixed in Version3.0PR17Q3
StatusclosedFix in branchFixed in SCM revision1a7aad006212
ProjectionnoneETAnoneTarget Version
OSAnyDatabaseAnyJava version
OS VersionDatabase versionAnt version
Product VersionSCM revision 
Review Assigned Tovmromanos
Web browser
ModulesCore
Regression level
Regression date
Regression introduced in release
Regression introduced by commit
Triggers an Emergency PackNo
Summary

0036368: Performance problem in C_Invoice_Post

DescriptionC_Incoice_Post procedure has poor performance requiring more than a second to process an invoice
Steps To ReproduceUsing a big database (in this case the big machine used to improve performance) the processing of an invoice takes more than a second.
Proposed SolutionThe problem is when using get_calendarowner function inside a query. Find attached the pacth with the proposed solution. This turns performance to 0.29 sec
TagsPerformance
Attached Filesdiff file icon performance_C_INVOICE_POST.diff [^] (1,927 bytes) 2017-06-28 12:55 [Show Content]

- Relationships Relation Graph ] Dependency Graph ]

-  Notes
(0097741)
vmromanos (manager)
2017-06-28 17:29

Test plan I:
As Openbravo admin
Go to purchase invoice window
Create a new record for organization España Norte.
Select any business partner and enter any line.
Complete the invoice. Verify the process is completed successfully.
Reactivate the invoice. Verify the process is completed successfully.
Complete the invoice again and void it. Verify the process is completed successfully.

Test plan II:
As Openbravo admin
Go to purchase invoice window
Create a new record for organization España.
Select any business partner and enter any line.
Complete the invoice. Verify the process is completed successfully.
Reactivate the invoice. Verify the process is completed successfully.
Complete the invoice again and void it. Verify the process is completed successfully.

Test plan III:
As Openbravo admin
Go to sales invoice window
Create a new record for organization España Norte.
Select any business partner and enter any line.
Complete the invoice. Verify the process is completed successfully.
Reactivate the invoice. Verify the process is completed successfully.
Complete the invoice again and void it. Verify the process is completed successfully.

Test plan IV:
As Openbravo admin
Go to sales invoice window
Create a new record for organization España.
Select any business partner and enter any line.
Complete the invoice. Verify the process is completed successfully.
Reactivate the invoice. Verify the process is completed successfully.
Complete the invoice again and void it. Verify the process is completed successfully.
(0097748)
hgbot (developer)
2017-06-29 07:37

Repository: erp/devel/pi
Changeset: 1a7aad006212c5ca48944ddb74f47e184b29b8bb
Author: Víctor Martínez Romanos <victor.martinez <at> openbravo.com>
Date: Wed Jun 28 14:57:06 2017 +0200
URL: http://code.openbravo.com/erp/devel/pi/rev/1a7aad006212c5ca48944ddb74f47e184b29b8bb [^]

Fixed issue 36368: Performance problem in C_Invoice_Post

Changeset pushed on behalf of EAR

AD_ORG_GETCALENDAROWNER function was creating performance problems in queries related to high volume tables, as it was evaluated per each record.
Solution extracts the function call in a separate query that is executed just one time.
The result is passed to the where clause using a variable thus improving performance.

---
M src-db/database/model/functions/C_INVOICE_POST.xml
---
(0097749)
vmromanos (manager)
2017-06-29 07:37

Code review + testing OK
(0097763)
hudsonbot (developer)
2017-06-29 13:03

A changeset related to this issue has been promoted main and to the
Central Repository, after passing a series of tests.

Promotion changeset: https://code.openbravo.com/erp/devel/main/rev/d271753746bb [^]
Maturity status: Test

- Issue History
Date Modified Username Field Change
2017-06-28 12:55 eduardo_Argal New Issue
2017-06-28 12:55 eduardo_Argal Assigned To => Triage Finance
2017-06-28 12:55 eduardo_Argal File Added: performance_C_INVOICE_POST.diff
2017-06-28 12:55 eduardo_Argal Modules => Core
2017-06-28 12:55 eduardo_Argal Resolution time => 1499810400
2017-06-28 12:55 eduardo_Argal Triggers an Emergency Pack => No
2017-06-28 14:49 vmromanos Status new => scheduled
2017-06-28 17:29 vmromanos Note Added: 0097741
2017-06-29 07:37 hgbot Checkin
2017-06-29 07:37 hgbot Note Added: 0097748
2017-06-29 07:37 hgbot Status scheduled => resolved
2017-06-29 07:37 hgbot Resolution open => fixed
2017-06-29 07:37 hgbot Fixed in SCM revision => http://code.openbravo.com/erp/devel/pi/rev/1a7aad006212c5ca48944ddb74f47e184b29b8bb [^]
2017-06-29 07:37 vmromanos Review Assigned To => vmromanos
2017-06-29 07:37 vmromanos Note Added: 0097749
2017-06-29 07:37 vmromanos Status resolved => closed
2017-06-29 07:37 vmromanos Fixed in Version => 3.0PR17Q3
2017-06-29 09:42 Sandrahuguet Tag Attached: Performance
2017-06-29 13:03 hudsonbot Checkin
2017-06-29 13:03 hudsonbot Note Added: 0097763


Copyright © 2000 - 2009 MantisBT Group
Powered by Mantis Bugtracker