Performance of formula string compilation has become somewhat slower due to the fact that we process all sheet names each time ScCompiler is invoked. This may be fine when compiling formula strings individually, but can cause significant slow-down when compiling a large number of formula strings in a single run.
One place we've noticed is when updating Calc's internal named range container which invokes re-compilations of all formula cell strings.
I'm on it.
It's done on master. The backport request is here: https://gerrit.libreoffice.org/7861
Created attachment 93465 [details]
file contains 400 sheets, 25 formula on each, 10k namedRanges
use macro testAddNRFromTitle to add 10 named ranges
evaluation of test case file
Libro354 --> 0.222 s
Libro414 --> 0.341 s
Libro4204 --> 4.441 s
current Master with patch --> 0.725 s
Kohei Yoshida committed a patch related to this issue.
It has been pushed to "libreoffice-4-2":
fdo#74516: Avoid excessive building of escaped sheet names.
It will be available in LibreOffice 4.2.1.
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:
Affected users are encouraged to test the fix and report feedback.
This is now backported.
Migrating Whiteboard tags to Keywords: (perf)