Comment 23 for bug 1034999

Revision history for this message
In , Francewhoa+bugs-documentfoundation-org (francewhoa+bugs-documentfoundation-org) wrote :

Created attachment 134057
calc_spreadsheet---after---Slow_Edit_Large_Cell---Francewhoa---2017-06-15.ods

Hi LibreOffice enthusiasts :)

Challenge summary:
Using LibreOffice (LO) Calc, adding large amount of text to a text cell result in Calc hangs. Hang ranges from slow to unusable Calc. Same challenge with opening large cells.

Steps to reproduce challenge:
1. Install fresh LibreOffice 5.2.7.2

2. Create a fresh Calc spreadsheet. Find attached spreadsheet titled "calc_spreadsheet---before---Slow_Edit_Large_Cell---Francewhoa---2017-06-15.ods"

3. Paste into a cell any text with the following minimum values:
...• Lines: 235
...• Words: 11,604
...• Characters with space: 78,936
...• Calculations: None
...• Formatting on cell: No advanced formatting
For spreadsheet example, find attached file titled "calc_spreadsheet---after---Slow_Edit_Large_Cell---Francewhoa---2017-06-15.ods"

4. LibreOffice hang for ~30 seconds. One CPU is running at 100%. After that hang the text is pasted.

5. Double click on that cell to open it. LibreOffice hangs again for another ~30 seconds. And so on.

The amount of text in the cell is directly correlated to the length of time required to open or edit the cell. So 470 lines is roughly double the hang time than 235 lines.

Expected outcome:
• Expected result is the text should be added to the text cell within ~1 second. Not ~30 seconds. 30 seconds is very fast if we need to do one operation within ~one day. But the issue is that we need to do multiple operations within 1 minute. Then we need to do that multiple time per day, week, year. For example when we need to do 10 to 20 copy-paste operations per minute, the total freeze time range from 5 to 10 minutes. Which is too slow. Another example is with 100 to 200 copy-paste, which result in a total freeze ranges 50 to 100 minutes. Again too slow. There is something slowing down both the copy-paste process of a large cell and opening a large cell. It's unclear what is causing that.

What we tried that was effective:
• Use LibreOffice 4.2. Instead of 5.2.7.2. This issue can not be reproduce on LibreOffice 4.2.
• Using 5.2.7.2, brake down the large cell content into multiple small cells. But that's not usable, as I need to add large amount of text to large amount of cells, and sheets.

What I tried that was ineffective:
• "Format" menu > "Cell" option > "Numbers" > Text
• "Format" menu > "Clear Direct Formatting" option
• Increase memory at “Tools > LibreOffice > Memory“
• Force LO to use the lastest installed Java 1.8 at “Tools > Options > LibreOffice > Advanced > Expert Configuration”
• Close the LO sidebar
• "Format" menu > "Cell" option > "Alignment" > unchecked "Wrap text automatically"

Suggested fix:
• Allow users to add large amount of text without triggering whatever is triggering intensive CPU usage. Assuming the user is adding simple text and without complex formatting and without any calculation. No cell validation is requested, but maybe somehow LO is trying to validate the full content of the cell. If so, how about allowing the user to deactivate such automated validation per cell, per sheet, per spreadsheet, per LO global setting?

LibreOffice:
• Version: 5.2.7.2
• Build ID: 1:5.2.7-1~bpo8+1
• CPU Threads: 8; OS Version: Linux 4.9; UI Render: default; VCL: gtk3;
• Locale: en-CA (en_CA.utf8); Calc: group
• Java 1.8.0_131 Oracle Corporation

System:
• Base: Debian 8.8 Jessie, 64-bit
• Gnome: 3.14.1
• Kernel: 4.9.0-0.bpo.3-amd64 #1 SMP Debian 4.9.25-1~bpo8+1 (2017-05-19) x86_64 GNU/Linux

Hardware:
• Ram: 31GB. Only LibreOffice is open and active.
• Processor: Intel Core i7 @ 3.10 GHz
• CPU: 8

• Similar challenges:
...• https://bugs.launchpad.net/ubuntu/+source/libreoffice/+bug/1034999
...• https://askubuntu.com/questions/925383/libreoffice-calc-is-slowing-down-when-working-with-big-cells
...• https://ask.libreoffice.org/en/question/75074/libreoffice-5204-unbearably-slow-on-ubuntu-1404/

I would be happy to contribute testing and documentation if needed

Let me know if you have any questions or need anything else

Cheers,

Francewhoa