Selecting columns in a spreadsheet is very slow with very high CPU usage.
Steps to Reproduce:
1. Open the attached test ods file.
2. Select the entire columns A:C (i.e., click on the column header A and drop until header C).
3. Click any cell to release the selection
4. Repeate step 2 and 3 several times.
Calc freezes with 100% CPU usage of one core, and takes a long time for the selection to complete.
The selection should complete within 3 seconds.
User Profile Reset: No
Build ID: 60da17e045e08f1793c57c00ba83cdfce946d0aa
CPU 线程: 4; 操作系统: Linux 5.0; UI 渲染: 默认; VCL: gtk3;
区域语言: zh-CN (zh_CN.UTF-8); UI 语言: zh-CN
Created attachment 157049 [details]
Test ods file
No repro on Windows with
Version: 126.96.36.199.alpha0+ (x64)
Build ID: 42a1a1c6b91907f81e15066ffab219411f18c4db
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: GL; VCL: win;
Locale: nl-NL (nl_NL); UI-Language: en-US
no repro in
ID сборки: 08d19fecdc7a2298d051e19cfdb7c35544855fc3
Потоков ЦП: 4; ОС: Mac OS X 10.15.2; Отрисовка ИП: по умолчанию; VCL: osx;
Локаль: ru-RU (ru_RU.UTF-8); Язык интерфейса: ru-RU
possibly it's GTK3 only?
Kevin, can you test it:
1. with more new 188.8.131.52 version from TDF site?
2. on your machine but with vcl:gen instead gtk3? (use command SAL_USE_VCLPLUGIN=gen soffice)
(In reply to Roman Kuznetsov from comment #3)
Yes, it is gtk3 only. If I set SAL_USE_VCLPLUGIN to gen or gtk, it works OK.
Could not repro with 6.3.4 or master with gtk3. Can you repro with a master build?
Arch Linux 64-bit
Build ID: a7afbbb86d4bb107dfbb24604c46ed9352bcb425
CPU threads: 8; OS: Linux 5.4; UI render: default; VCL: gtk3;
Locale: fi-FI (fi_FI.UTF-8); UI-Language: en-US
Built on 7 January 2020
On pc Debian x86-64 with LO Debian package 6.3.4 + gtk3, I don't reproduce this.
When you indicate "several times", you mean about 5, 10, 20, more?
(I tried about 5 times)
(In reply to Julien Nabet from comment #6)
For me, I noticed the slowness with just 2 or 3 times of repeat.
I am building master with --enable-symbols and trying to generate a perf blamegraph.
Created attachment 157082 [details]
perf flamegraph svg
I am not sure whether the attached perf flamegraph is useful. It is generated using an --enable-symbols build on master branch, but the part consuming most of the CPU is marked as "[unknown]".
If further debug process is needed, please let me know.
I share the perf.data file in the following link, in case someone need it:
Kevin: I don't know if it'll help or not.
It's a bit weird nobody can reproduce this except it it's related to localization.
Just to be sure, did you try with a brand new profile?
For Flamegraph, I've been told to use enable-symbols but without enable-dbgutil/enable-debug because these last options are a bit parasite for a Flamegraph.
For the rest, if you followed https://wiki.documentfoundation.org/Development/How_to_debug#Performance_debugging_.28perf.29, it should be ok.
(In reply to Julien Nabet from comment #10)
Yes, I tried resetting the profile, but bug remains.
By the way, I am using a most recent version of Ubuntu 18.04 x64.
$ uname -a
Linux Kevin-X230i 5.0.0-37-generic #40~18.04.1-Ubuntu SMP Thu Nov 14 12:06:39 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
I don't see any of you mentioned Ubuntu who does not reproduce. It may be specific to Ubuntu 18.04 LTS.
I did setting the UI language to English U.S.
(In reply to Kevin Suo from comment #11)
> (In reply to Julien Nabet from comment #10)
> Yes, I tried resetting the profile, but bug remains.
> I don't see any of you mentioned Ubuntu who does not reproduce. It may be
> specific to Ubuntu 18.04 LTS.
> I did setting the UI language to English U.S.
Ok so not localization related.
Noel: any thoughts about Flamegraph attached by Kevin?
As suggested in the ubuntu irc channel, I reported this issue to ubuntu bug tracker using ubuntu-bug, which contains more information about the system.
(In reply to Kevin Suo from comment #13)
> As suggested in the ubuntu irc channel, I reported this issue to ubuntu bug
> tracker using ubuntu-bug, which contains more information about the system.
Just for curiosity, is it mandatory you stick with LTS? I mean, it can be related to gtk libs of this Ubuntu version.
Could you give a try with another rendering?
export SAL_USE_VCLPLUGIN=gen && soffice
or (if you have qt libs installed)
export SAL_USE_VCLPLUGIN=kf5 && soffice
Finally, would you have another computer to test with a recent Ubuntu?
The perf graph is not useful, it has incomplete stacks. Perf needs to be configured with larger buffers to catch anything useful with libreoffice.
See the command line right at the end of this page:
and maybe install the gtk debug package to get good symbol names there
i set the perf chart to obsolete.
@Kevin, could you please provide a new one based on Noel's comment ?
Created attachment 157134 [details]
perf flamegraph svg
See attached updated perf flamegraph svg with the following command:
perf record --call-graph dwarf,65528 --pid=`pidof soffice.bin`
The raw perf data file was 8GB in size, I terminated soffice by hitting ctrl+c once. I got the warning "Check IO/CPU overload!" when running the perf process.
I am not able to install the gtk3 debug package because it seems Ubuntu 18.04 does not provide one.
Thanks for the flamegraph Kevin, that looks good. Unfortunately I dont see znything obviously easy to fix.
I'm sorry, I can't reproduce this, so can't really fix it.
Presumably it has something to do with being in the right locale?
(In reply to Noel Grandin from comment #19)
I am not sure whether is specific to any locale.
I will try to setup a (minimum) virtual machine in which this issue can be reproduced, does it help? If yes, I think the main problem is that the VM may be many GB to share to share.
Kevin: can you reproduce this with English UI and locale as well?
I tried with zh-CN locale (not UI yet) and I also installed Noto Sans CJK SC font as it was used in all the empty cells. I still could not reproduce the problem on Linux with gtk3, master build of my own.
Well, I am not able to reproduce this in any of the virtual machines any more. I upgraded my host system from Ubuntu 18.04 to Fedora 31, this did not happen in Fedora, and also Ubuntu is going to release the Ubuntu 20.04 LTS very soon, so I'd rather close this as WORKSFORME.
However, when testing this bug, I found another one, which may be related, but may be a different issue. I reported in bug 131092. That one seems to be not specific to any locale or UI language.