Bug 89281 - FILEOPEN: fix performance regression of XLS import
Summary: FILEOPEN: fix performance regression of XLS import
Status: RESOLVED WONTFIX
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
4.2.5.2 release
Hardware: Other All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:4.5.0 target:4.4.2
Keywords: filter:xls, perf
Depends on:
Blocks:
 
Reported: 2015-02-10 09:23 UTC by László Németh
Modified: 2021-10-26 08:02 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
kcachegrind profile - base XLS load (212.38 KB, image/png)
2015-02-10 10:09 UTC, László Németh
Details
kcachegrind profile - optimized XLS load (208.19 KB, image/png)
2015-02-10 10:09 UTC, László Németh
Details

Note You need to log in before you can comment on or make changes to this bug.
Description László Németh 2015-02-10 09:23:53 UTC
The fix for Bug 76611 caused ~20% performance degradation in XLS import. With optional cloning of ScTokenArray of the shared XLS formulas, depending from the need of address wrapping, it is possible to gain back near the original performance.
Comment 1 László Németh 2015-02-10 10:09:04 UTC
Created attachment 113284 [details]
kcachegrind profile - base XLS load
Comment 2 László Németh 2015-02-10 10:09:53 UTC
Created attachment 113285 [details]
kcachegrind profile - optimized XLS load
Comment 3 Commit Notification 2015-02-10 10:13:46 UTC
László Németh committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=b18b5b7edf3d14ef5f0efe53e367f88a423088c4

tdf#89281 fix performance regression of XLS import

It will be available in 4.5.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 4 László Németh 2015-02-10 10:22:49 UTC
Change of the total cycle estimation cost: 15.4b -> 13.1b (15% saving).
Comment 5 László Németh 2015-02-10 10:38:18 UTC
Note: The original patch for Bug 76611 has already got an unit test, too (see wrapped-refs.xls), and that unit test works with the new performance fix, too.
Comment 6 Commit Notification 2015-02-12 22:52:01 UTC
László Németh committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=ba686b9bd2596811141e4028947334f10799c356

tdf#89281 fix performance regression of XLS import - cleanup

It will be available in 4.5.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 7 Commit Notification 2015-02-13 13:15:11 UTC
László Németh committed a patch related to this issue.
It has been pushed to "libreoffice-4-4":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=76610b00b67cf9c4600caed0f4d75d04e825f9d2&h=libreoffice-4-4

tdf#89281 fix performance regression of XLS import

It will be available in 4.4.2.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 8 QA Administrators 2016-02-21 08:34:53 UTC Comment hidden (obsolete)
Comment 9 Cor Nouws 2016-09-06 20:10:08 UTC
@Lászlo: I assumne this one can be set fixed..
Comment 10 László Németh 2021-10-26 08:02:23 UTC
The fix for this issue was reverted, because it changed the performance regression with a serious regression in functionality: editing messed up formulas, see tdf#142010. It's a question, that it's possible to speed up the performance right here, so set the issue to WONTFIX.