Openbravo Issue Tracking System - Openbravo ERP |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0016622 | Openbravo ERP | I. Performance | public | 2011-04-03 13:43 | 2012-10-13 15:50 |
|
Reporter | eintelau | |
Assigned To | alostale | |
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | fixed | |
Platform | | OS | 5 | OS Version | |
Product Version | pi | |
Target Version | | Fixed in Version | 3.0MP16 | |
Merge Request Status | |
Review Assigned To | AugustoMauch |
OBNetwork customer | |
Web browser | |
Modules | Core |
Support ticket | |
Regression level | |
Regression date | |
Regression introduced in release | |
Regression introduced by commit | |
Triggers an Emergency Pack | No |
|
Summary | 0016622: ReadOnlyDataSourceService doesn't honour the prevent count parameter |
Description | The ReadOnlyDataSourceService (in org.openbravo.service.datasource module) doesn't honour the JSON prevent count parameter & always does a count on its results.
This can cause severe performance issues when using a complex query, especially when the datasource implementation can't do the count within the database & has to retrieve all results to provide the count. |
Steps To Reproduce | 1) Create a Reference with a Selector that uses a custom HQL query
2) Apply that reference to a field
3) View a window that uses that field & try to open the selector.
4) With a sufficiently large data set for the query (e.g 100,000's results) you will see the CPU spike & the jvm potentially run out of memory. |
Proposed Solution | Check for the _noCount parameter & prevent the count from occuring when it is present & true. |
Additional Information | |
Tags | No tags attached. |
Relationships | related to | defect | 0016621 | 3.0RC7 | closed | mtaal | Selector item does an unnecessary count operation on server | related to | defect | 0016373 | 3.0MP1 | closed | gorkaion | Product selector & grid not usable when system has large number of products active | blocks | defect | 0016611 | 3.0RC7 | closed | mtaal | Initial request done by UI selector element in form view does not use any filters or paging |
|
Attached Files | 16622.patch (1,522) 2011-04-03 13:45 https://issues.openbravo.com/file_download.php?file_id=3820&type=bug |
|
Issue History |
Date Modified | Username | Field | Change |
2011-04-03 13:43 | eintelau | New Issue | |
2011-04-03 13:43 | eintelau | Assigned To | => dbaz |
2011-04-03 13:43 | eintelau | Modules | => Core |
2011-04-03 13:45 | eintelau | File Added: 16622.patch | |
2011-04-04 10:56 | dbaz | Assigned To | dbaz => mtaal |
2011-04-05 14:07 | shuehner | Category | B. User interface => I. Performance |
2011-04-05 17:19 | shuehner | Relationship added | blocks 0016611 |
2011-04-11 10:29 | alostale | Status | new => scheduled |
2011-04-11 15:40 | mtaal | Assigned To | mtaal => alostale |
2011-04-26 12:55 | gorkaion | Relationship added | related to 0016621 |
2011-06-17 13:14 | gorkaion | Relationship added | related to 0016373 |
2012-09-07 14:36 | hgbot | Checkin | |
2012-09-07 14:36 | hgbot | Note Added: 0051939 | |
2012-09-07 14:36 | hgbot | Status | scheduled => resolved |
2012-09-07 14:36 | hgbot | Resolution | open => fixed |
2012-09-07 14:36 | hgbot | Fixed in SCM revision | => http://code.openbravo.com/erp/devel/pi/rev/d719d893fa76930495cfca884a31d15b1dfdc0d9 [^] |
2012-09-13 12:57 | AugustoMauch | Closed by | => AugustoMauch |
2012-09-13 12:57 | AugustoMauch | Note Added: 0052061 | |
2012-09-13 12:57 | AugustoMauch | Status | resolved => closed |
2012-09-13 12:57 | AugustoMauch | Fixed in Version | => 3.0MP16 |
2012-09-26 17:18 | hudsonbot | Checkin | |
2012-09-26 17:18 | hudsonbot | Note Added: 0052716 | |
2012-10-11 17:38 | hgbot | Checkin | |
2012-10-11 17:38 | hgbot | Note Added: 0053316 | |
2012-10-13 15:50 | hudsonbot | Checkin | |
2012-10-13 15:50 | hudsonbot | Note Added: 0053334 | |
Notes |
|
(0051939)
|
hgbot
|
2012-09-07 14:36
|
|
Repository: erp/devel/pi
Changeset: d719d893fa76930495cfca884a31d15b1dfdc0d9
Author: Pandeeswari Ramakrishnan <pandeeswari.ramakrishnan <at> openbravo.com>
Date: Fri Sep 07 17:05:42 2012 +0530
URL: http://code.openbravo.com/erp/devel/pi/rev/d719d893fa76930495cfca884a31d15b1dfdc0d9 [^]
Fixes issue 16622 : ReadOnlyDataSourceService doesn't honour the prevent count parameter
---
M modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/ReadOnlyDataSourceService.java
---
|
|
|
|
Code reviewed and verified in pi@e4be9ce5c5fa |
|
|
|
|
|
(0053316)
|
hgbot
|
2012-10-11 17:38
|
|
Repository: erp/devel/pi
Changeset: ebea3541b581cfd2d5ba3c5645af8a1db1c3c3e9
Author: Augusto Mauch <augusto.mauch <at> openbravo.com>
Date: Thu Oct 11 17:36:43 2012 +0200
URL: http://code.openbravo.com/erp/devel/pi/rev/ebea3541b581cfd2d5ba3c5645af8a1db1c3c3e9 [^]
Fixes issue 21910: When a widget is opened in a window it shows all its records
This issue was caused by the fix of the issue 16622. In that issue the ReadOnlyDataSourceServeld was changed so that it kept count of the number of records if the NOCOUNT parameter was set to 'false', as it was done with other datasources. In this case, in order not to break existing calls to the datasource, the count will only be prevented if the parameter is set to 'true', so if the parameter does not have any value (as it is in this scenario of the issue), the count will be done.
---
M modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/ReadOnlyDataSourceService.java
---
|
|
|
|
|