Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0040163Openbravo ERPA. Platformpublic2019-02-06 16:102019-02-11 14:13
caristu 
caristu 
highminorhave not tried
closedfixed 
5
 
3.0PR19Q2 
alostale
Core
No
0040163: Do not use xercesImpl XML parser factory in update.database.java task
As stated in issue 0040152, the XML parser of the xercesImpl library is slower than the default Java XML parser when reading the database model.

For this reason, we should explicitly define the parser to be used by the update.database.task in the same way we are doing for the export.database and export.sample.data tasks.

In description
Performance
related to defect 0040152 closed caristu export.database is slower after defining it as a forked task 
Issue History
2019-02-06 16:10caristuNew Issue
2019-02-06 16:10caristuAssigned To => caristu
2019-02-06 16:10caristuModules => Core
2019-02-06 16:10caristuTriggers an Emergency Pack => No
2019-02-06 16:10caristuIssue generated from0040152
2019-02-06 16:10caristuRelationship addedrelated to 0040152
2019-02-06 16:15caristuSummaryDo not use xercesImpl XML parser in update.database.java task => Do not use xercesImpl XML parser factory in update.database.java task
2019-02-06 16:17caristuNote Added: 0109649
2019-02-06 16:22caristuNote Edited: 0109649bug_revision_view_page.php?bugnote_id=0109649#r18287
2019-02-06 16:23caristuDescription Updatedbug_revision_view_page.php?rev_id=18289#r18289
2019-02-06 16:30caristuTag Attached: Performance
2019-02-06 16:30caristuReview Assigned To => alostale
2019-02-06 16:35hgbotCheckin
2019-02-06 16:35hgbotNote Added: 0109650
2019-02-06 16:35hgbotStatusnew => resolved
2019-02-06 16:35hgbotResolutionopen => fixed
2019-02-06 16:35hgbotFixed in SCM revision => http://code.openbravo.com/erp/devel/pi/rev/25c609294e5e30e4e1c46381c72cdaef42063ab5 [^]
2019-02-11 14:13alostaleNote Added: 0109668
2019-02-11 14:13alostaleStatusresolved => closed
2019-02-11 14:13alostaleFixed in Version => 3.0PR19Q2

Notes
(0109649)
caristu   
2019-02-06 16:17   
(edited on: 2019-02-06 16:22)
Measured the difference in the duration of the update.database.java task using both parsers, executing the task 10 times for each one, these are the average times:

- org.apache.xerces.jaxp.SAXParserImpl (xerces): 28,1199 seconds
- com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl: 26,6953 seconds

(0109650)
hgbot   
2019-02-06 16:35   
Repository: erp/devel/pi
Changeset: 25c609294e5e30e4e1c46381c72cdaef42063ab5
Author: Carlos Aristu <carlos.aristu <at> openbravo.com>
Date: Wed Feb 06 16:27:17 2019 +0100
URL: http://code.openbravo.com/erp/devel/pi/rev/25c609294e5e30e4e1c46381c72cdaef42063ab5 [^]

fixes bug 40163: Don't use xercesImpl XML parser factory in update.database

  Specify the com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl as the SAXParserFactory implementation to be used in update.database.java. It provides an XML parser which is faster than the implementation provided by the xercesImpl library.

---
M src-db/database/build.xml
---
(0109668)
alostale   
2019-02-11 14:13   
reviewed + tested