Bug Hunting Session
Bug 57896 - EDITING: duration for copy or deletion of 1 sheet depends on number of sheets with CONDITIONAL FORMATTING in document.
Summary: EDITING: duration for copy or deletion of 1 sheet depends on number of sheets...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
4.0.0.0.alpha1
Hardware: Other All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:4.0.0.1 target:4.1.0 target:3.6.5
Keywords: perf
: 57028 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-12-04 20:55 UTC by andis.lazdins
Modified: 2015-12-15 11:34 UTC (History)
7 users (show)

See Also:
Crash report or crash signature:


Attachments
Sample file showing how increased number of sheets affects speed of copy / delete sheet operation (52.76 KB, application/vnd.oasis.opendocument.spreadsheet)
2012-12-04 20:56 UTC, andis.lazdins
Details
Document with macro in it (55.19 KB, application/vnd.oasis.opendocument.spreadsheet)
2012-12-05 19:08 UTC, Rainer Bielefeld Retired
Details

Note You need to log in before you can comment on or make changes to this bug.
Description andis.lazdins 2012-12-04 20:55:15 UTC
Simple way to repeat this behavior is to take sample file in attachment with one monthly time sheet and repeat several times Move/copy sheet operation (select copy in the dialogue) to the same file. It doesn't matter, how new sheets are entitled. Starting with 4th or 5th sheet copy operation takes much longer, on my computer 1-5 minutes; probably, depending from number of sheets. The same happens on delete sheet - deleting takes 1 minute or more if there are more that 4-5 sheets.

On openoffice 2.4.2 the operation in both directions takes 1 second or a bit more and it is not affected by number of sheets. I think that Libreoffice 3.5.5 also did not have this problem. It appeared with 3.6 branch.
Comment 1 andis.lazdins 2012-12-04 20:56:35 UTC
Created attachment 71013 [details]
Sample file showing how increased number of sheets affects speed of copy / delete sheet operation
Comment 2 Rainer Bielefeld Retired 2012-12-05 19:07:47 UTC
[Reproducible] with "LibreOffice 3.6.4.3 rc" German UI/ German Locale [Build-ID: 2ef5aff] {pull date 2012-11-28} on German WIN7 Home Premium (64bit) 

I created an improved sample document from reporter's with a copy macro and copy button to ease testing

Steps how to reproduce:
0. Open Sample document from LibO start Center with enabled macros, make sure 
   that the sheet "janv" is selected.
1. Click red "Copy" button in the sheet
   > After 1 second an additional sheet will appear
2. 'right click this new sheet -> Delete sheet -> ak>'
   It sill take a second or so to delete the sheet.
3. Now repeat step 1 10 times or so (always wait until new sheet has appeared).
   You will observe that every new copy will take some seconds longer than
   the copy process before                                                   !!!
4. Now delete one of the new sheets: it will take several seconds instead of
   1 second.                                                                 !!!

Now do the same test, but with LibO 3.4.5, and in step 3 each new copa will take the same tame as the copy before.

And also deletion with 10 sheets will only take 1 second, the same as with only 2 sheets in the document.

@andis.lazdins@gmail.com:
That's a very special document, can you reproduce that behavior also with a new document only containint 1000 "A"  in 1000 cells? If not, any idea what might cause the problem here?
Comment 3 Rainer Bielefeld Retired 2012-12-05 19:08:36 UTC
Created attachment 71039 [details]
Document with macro in it

Eases Copying sheets with a single click
Comment 4 Rainer Bielefeld Retired 2012-12-05 19:17:35 UTC
Still [Reproducible] with parallel installation of  "LOdev  4.0.0.0.alpha1+   -  ENGLISH UI / German Locale  [Build ID:ac4d26e3fc2728ee80f33a485540d50b48927dd)]"  {tinderbox: Win-x86@6, pull time 22012-12-03 09:03:45} on German WIN7 Home Premium (64bit) with own separate User Profile 

I already found the reason.

With 'Format -> CF -> Manage -> Delete' I deleted all conditional formatting, and the bad effect disappeared.

@Markus:
Hope you won't become angry with me ;-)
Comment 5 Markus Mohrhard 2012-12-05 19:38:25 UTC
> 
> @Markus:
> Hope you won't become angry with me ;-)

No. It's good to find the bug reports early.

The problem is most likely the new copy conditional format code. It has to do more checks and adapt the range of the conditional format. However I need to profile it and see where we can improve the performance if it turns out that this is the problem.
Comment 6 Markus Mohrhard 2012-12-06 01:09:51 UTC
(In reply to comment #5)
> > 
> > @Markus:
> > Hope you won't become angry with me ;-)
> 
> No. It's good to find the bug reports early.
> 
> The problem is most likely the new copy conditional format code. It has to
> do more checks and adapt the range of the conditional format. However I need
> to profile it and see where we can improve the performance if it turns out
> that this is the problem.

Oh. Can you please retest this with beta1? Before that the old bug that cond format range was not correctly updated during the copy sheets operation would have resulted in some of the problems mentioned here.
Comment 7 Rainer Bielefeld Retired 2012-12-18 11:34:58 UTC
I compared server  installation of  "LOdev  4.0.0.0.beta1+   -  ENGLISH UI / German Locale  [Build ID: 6d4a55bf38a1c470c49f904dbbddf94eb2f6154)]"  {tinderbox: Win-x86@6, pull time 2012-12-17 08:36:40} on German WIN7 Home Premium (64bit) with own separate User Profile with 3.6.4.3
To create the fifth copy using the macro (with "_2_2_2_2_2" in the name" 
- 4.0.0.0 needs 5s
- 3.6.4.3 needs 6s

So no significant difference, both still much slower than 3.4.5

BTW, for me the copy button only works  when I click sheet "Tabelle2" and back to "janv" before I start copying with copy button
Comment 8 Markus Mohrhard 2012-12-25 20:47:15 UTC
http://cgit.freedesktop.org/libreoffice/core/commit/?id=eaecc7971f7024a0f5aa7df1d933bd60a9f1357c

should hopefully speed it up a bit. We can't reach the same speed as we did before as w have to do some additional steps now.
Comment 9 Not Assigned 2012-12-26 03:18:06 UTC
Markus Mohrhard committed a patch related to this issue.
It has been pushed to "libreoffice-4-0":

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

one more improvement around cond format rendering, fdo#57896


It will be available in LibreOffice 4.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 10 Not Assigned 2012-12-26 03:18:24 UTC
Markus Mohrhard committed a patch related to this issue.
It has been pushed to "master":

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

one more improvement around cond format rendering, fdo#57896



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 11 andis.lazdins 2012-12-26 09:51:45 UTC
I'm using Librefoffice on computer with characteristics listed below (Processor - 2x Pentium(R) Dual-Core CPU T4500 @ 2.30GHz; Memory - 3092MB; Operating System - Ubuntu 12.04.1 LTS; OpenGL Renderer - GeForce G210M/PCIe/SSE2). The most of computers in my office has worse characteristics in terms of CPU and memory. I guess it is quite common in the most of the offices, especially in those switching to libreoffice to save money.
I was worried by comment in this list: "...We can't reach the same speed as we did before...". When I tried to add up to 10 sheets using Version 4.0.0.0.beta2 (Build ID: 4104d660979c57e1160b5135634f732918460a0), the last one took about 3 minutes (and 200 MB of RSS and 52% of CPU) to add and to delete, more complex spreadsheets (about 1 MB in size) simply crashes after some time, when I try to add or remove sheets. I other words Libreoffice cannot be used anymore to analyse scientific data in a more complex way, at least if they contains conditional formatting elements, which is quite common approach to visualise some error values.
I hope that provided solution will improve the situation; however, I would say it is serious problem and the target is to increase speed in compare to previous state.

I got a lot of complains from my colleges, when I tried to upgrade to 3.6 branch in our team, also for this regression. Please, keep in mind that it is very hard to keep peaple using libreoffice, when such things happens, especially when I can't show benefits somewhere in other functions from loosing ability to use conditional formatting in data analysis.
Comment 12 Markus Mohrhard 2012-12-26 19:11:00 UTC
*** Bug 57028 has been marked as a duplicate of this bug. ***
Comment 13 vlb 2012-12-28 09:20:03 UTC
In the sheets by my issue 57028 works fine now!
Thanks for solving the issue.

Version 4.0.0.0.beta2+ (Build ID: c5229f497008051b078e9f76e00031dfb3b6f41)

Is it possible that the patch is use for 3.6.5?
Comment 14 Cor Nouws 2013-01-06 10:17:03 UTC
(In reply to comment #13)
> Is it possible that the patch is use for 3.6.5?

Would be great indeed.
Should that need much testing on possible side effects, Markus?
Comment 15 andis.lazdins 2013-01-11 13:18:56 UTC
The solution works very well on Version 4.0.0.1 (Build ID: 527dba6f6e0cfbbc71bd6e7b88a52699bb48799), in both directions
Comment 16 Not Assigned 2013-01-15 11:30:08 UTC
Markus Mohrhard committed a patch related to this issue.
It has been pushed to "libreoffice-3-6":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=f0b733be07a8ea79b65489e0a46b86736436185c&h=libreoffice-3-6

one more improvement around cond format rendering, fdo#57896


It will be available in LibreOffice 3.6.6.

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 17 Not Assigned 2013-01-16 09:16:52 UTC
Markus Mohrhard committed a patch related to this issue.
It has been pushed to "libreoffice-3-6-5":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=44cc2d14ad3f20d137a2574dd30dd340c9b32570&h=libreoffice-3-6-5

one more improvement around cond format rendering, fdo#57896


It will be available already in LibreOffice 3.6.5.

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 18 Robinson Tryon (qubit) 2015-12-15 11:34:31 UTC
Migrating Whiteboard tags to Keywords: (perf)
[NinjaEdit]