Apache OpenOffice (AOO) Bugzilla – Issue 101093
Performance loading charts from XLSX very poor
Last modified: 2009-07-09 06:37:43 UTC
See attached documents. - chart_perf_020.xlsx contains 20 charts which are loaded in 6 seconds. - chart_perf_030.xlsx contains 30 charts. DEV300m37 takes 10 seconds to load, DEV300m38 takes 51 seconds. Performance is bad when the number of objects exceeds the number of objects to be cached (Tools->Options->Memory->object cache). Worse, load time increases exponentially when number of objects increases linearly. Reason seems to be that for each new inserted chart, all existing charts are loaded/unloaded again. May be caused by fix of issue 90614.
Created attachment 61568 [details] Test doc with 20 charts
Created attachment 61569 [details] Test doc with 30 charts
The fix of the issue 90614 should not trigger loading/unloading of the charts. But during the unloading of the charts it checks all the charts that are in running state. This is new and definitive affects performance, especially on import when the objects are created new. The solution actually should have linear dependency, since for any new chart it checks only the already running charts, and the number of the running charts is constant. So I am confused to hear about exponential load time increasing. Even if the charts never set to loaded state back that would mean a quadratic dependency, but definitely no exponential. I need to debug to understand what goes wrong here.
Indeed, looking at my numbers again: load time increased quadratically, not exponentially.
Ok, the check itself was no real problem, since it does not instantiate new objects, it just checks the state of already running objects. The problem was that the check was done for any change in the embedded object, that is actually unnecessary, since the list of the running objects is not changed in this case. Fixed. Actually the check is necessary only for objects that can be unloaded, so the objects in this document should not be affected by the check at all ( since they contain changes ). Fixed as well.
tried the patch with my test documents, fix works as expected.
mav->dr: Please verify the issue in fwk103.
verified, works as expected in CWS fwk103.
mav->dr: Thank you. Setting to verified state.
Verified in DEV300m51 Closing