Bug 34719 - EDITING: Undoing column delete operation with merged cells is very slow and scrolls the document
Summary: EDITING: Undoing column delete operation with merged cells is very slow and s...
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
(earliest affected)
3.3.1 release
Hardware: All All
: medium normal
Assignee: Not Assigned
Depends on:
Blocks: Undo-Redo Calc-Merge-Split
  Show dependency treegraph
Reported: 2011-02-25 06:33 UTC by Aurimas Fišeras
Modified: 2018-06-05 08:51 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:

Sample document (39.56 KB, application/vnd.oasis.opendocument.spreadsheet)
2011-02-25 06:33 UTC, Aurimas Fišeras
How it looks. (362.53 KB, video/ogg)
2011-05-14 03:00 UTC, Aurimas Fišeras

Note You need to log in before you can comment on or make changes to this bug.
Description Aurimas Fišeras 2011-02-25 06:33:59 UTC
Created attachment 43803 [details]
Sample document

How to reproduce:
1. Open attached document.
2. Select Column B.
3. Delete Column B (takes too long).
4. Undo last operation (Ctrl+Z) (takes very long).
5. (Optional) Redo last operation (Ctrl+Y) (takes very long).

Column B is restored, but the document starts scrolling, and merged cells are selected one by one. This takes very long time to complete.

This affects LibO 3.3.1, OO 3.2 - 3.4 on Linux/Windows.
In Excel both operations (3, 4) are completed instantly.
Comment 1 tester8 2011-02-26 04:14:26 UTC
Not Reproduced with LO 3.3.1 RC2 Ubuntu 10.04 x86.
All operations takes less then 2 seconds.
Please provide uname -a and Windows version.
Comment 2 Aurimas Fišeras 2011-02-26 04:54:15 UTC
I can reproduce it on Windows XP, Windows 2003 64-bit TS server with clean user's profile.

I can also reproduce it on Ubuntu 11.04 (Linux 2.6.38-5-generic #32-Ubuntu SMP Tue Feb 22 16:10:15 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux) with LibO 3.3.0, 3.3.1, 3.4-git.
Comment 3 Don't use this account, use tml@iki.fi 2011-03-08 00:08:04 UTC
Kohei, any ideas? Assign back to list if nothing can be done without a complete rewrite;)
Comment 4 Aurimas Fišeras 2011-05-14 03:00:20 UTC
Created attachment 46703 [details]
How it looks.

I can still reproduce the effect on all machines (Linux, Windows) I try with all versions of LibreOffce (up to LO 3.4b5).
Comment 5 Aurimas Fišeras 2011-12-27 03:11:39 UTC
I can still reproduce this bug in 3.5.0beta2 on Windows XP.
Comment 6 Aurimas Fišeras 2012-08-14 08:15:09 UTC
Still a problem in LibO 3.6.0 (and AOO 3.4).
Comment 7 Aurimas Fišeras 2012-11-05 10:28:24 UTC
Still a problem in LibreOffice (Build ID: 58f22d5) on Windows XP and Ubuntu 12.10 64-bit.
Comment 8 Aurimas Fišeras 2012-11-05 10:35:02 UTC
Checked with Libreoffice (Build ID: bce042) on Ubuntu 12.10 64-bit - same problem.
Comment 9 Aurimas Fišeras 2012-11-24 14:55:32 UTC
Ubuntu 13.04 64-bit. LibreOffice (Build ID: 233369b1e7990c6a3d03810b81eae0ee9175771)

Callgrind log: http://ubuntuone.com/1q8MmMEkwL1FLZnbreec9F

Callgrind log collected by running:
valgrind --tool=callgrind --simulate-cache=yes --instr-atstart=no --dump-instr=yes ./soffice.bin --calc --splash-pipe=0

Then opened a sample document, deleted column B. Started callgrind with "callgrind_control -i on", and pressed Ctrl+Z. After undo operation finished, exited LibreOffice.
Comment 10 Aurimas Fišeras 2013-09-24 13:14:31 UTC
It is even worse in 4.2 ( Build ID: d3c70e68c652bbdeeaea20200e003b6c5f92a62f).

Ubuntu 13.10 64-bit:
On LibreOffice undo operation (step 4) takes 21 seconds to complete
On LibreOffice undo operation (step 4) takes 137 seconds to complete.
Comment 11 Aurimas Fišeras 2014-11-20 11:03:07 UTC
Build ID: 9dc7bae64d1c08e06c755ea97c21e50bd6a8eec1
Locale: lt_LT

Still reproducible.
Comment 12 QA Administrators 2015-12-20 16:19:50 UTC Comment hidden (obsolete)
Comment 13 Aurimas Fišeras 2015-12-21 10:28:18 UTC
Still reproducible exactly as described on Windows 7:
Darinio identifikatorius: 2b9802c1994aa0b7dc6079e128979269cf95bc78
Lokalė: lt-LT (lt_LT)
Comment 14 QA Administrators 2017-01-03 19:57:34 UTC Comment hidden (obsolete)
Comment 15 Aurimas Fišeras 2017-01-03 20:45:32 UTC
The bug is still reproducible on:
Darinio identifikatorius: 1:5.2.2-0ubuntu3
Procesoriaus gijos: 4; Operacinės sistemos versija: Linux 4.9; Sąsajos pateikimas: numatytasis; 
Lokalė: lt-LT (lt_LT.UTF-8); Calc: group

Only difference is that the document no longer scrolls, and LibreOffice is unresponsive.

Deleting Column B (step 3) takes ~10 seconds of 100% CPU.
Undoing (step 4) takes ~110 seconds of 100% CPU.
CPU is "Intel Core i5-4200M @ 2.50GHz"
Comment 16 QA Administrators 2018-06-04 02:34:17 UTC Comment hidden (obsolete)
Comment 17 Aurimas Fišeras 2018-06-04 05:29:19 UTC
I cannot reproduce it any more. Step 3 and step 4 takes only 1-2 seconds on release builds.

Tried with:
Darinio identifikatorius: 1:6.0.3-0ubuntu1
Procesoriaus gijos: 4; OS:Linux 4.15; Sąsajos pateikimas: numatytasis; VCL: gtk3; 
Lokalė: lt-LT (lt_LT.UTF-8); Calc: group

Versija: (x64)
Darinio identifikatorius: 9b0d9b32d5dcda91d2f1a96dc04c645c450872bf
Procesoriaus gijos: 8; OS:Windows 10.0; Sąsajos pateikimas: numatytasis; 
Lokalė: lt-LT (lt_LT); Calc: 

Build ID: cb47f0d320994e001bc38dc2ee9b7d957b15e6ab
CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk2; 
Locale: lt-LT (lt_LT.UTF-8); Calc: group

Only with "--enable-debug" build step 3 and 4 each takes ~22 seconds of 100% CPU:
Darinio identifikatorius: 066abd6163a1b12e3bdcaf0385a4842c7bc7d119
Procesoriaus gijos: 4; OS:Linux 4.15; Sąsajos pateikimas: numatytasis; VCL: gtk3; 
Lokalė: lt-LT (lt_LT.UTF-8); Calc: group
Comment 18 Xisco Faulí 2018-06-05 08:51:15 UTC
Thanks for retesting with the latest version.
Setting to RESOLVED WORKSFORME as the commit fixing this issue hasn't been identified.