Bug 148147 - Calc freezes on "Sheet" menu after selecting multiple row ranges
Summary: Calc freezes on "Sheet" menu after selecting multiple row ranges
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
7.4.0.0 alpha0+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:7.4.0
Keywords: bibisected, bisected, perf, regression
Depends on:
Blocks: Calc-large-spreadsheets
  Show dependency treegraph
 
Reported: 2022-03-23 09:30 UTC by Michael Weghorn
Modified: 2022-04-01 14:58 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:
Regression By:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Weghorn 2022-03-23 09:30:44 UTC
Steps to reproduce:

1) start LO Calc
2) select row "1" by left-clicking on the row header
3) select row "3" in addition by Ctrl+left-clicking on the row header
4) left-click on the "Sheet" menu entry

Result:

LibreOffice (and in my case in a Plasma X11 session on Debian testing, pretty much the whole desktop environment) freezes.

Version: 7.4.0.0.alpha0+ / LibreOffice Community
Build ID: 131a06fb2e414d8b8e49cd03c6b45f715047bad1
CPU threads: 12; OS: Linux 5.16; UI render: default; VCL: gtk3
Locale: en-GB (en_GB.UTF-8); UI: en-US
Calc: threaded
Comment 1 Michael Weghorn 2022-03-23 09:31:40 UTC
This starts happening at

commit 4c5f8ccf0a2320432b8fe91add1dcadf54d9fd58
Author: Luboš Luňák <l.lunak@collabora.com>
Date:   Tue Mar 8 12:44:49 2022 +0100

    change default Calc number of columns to 16384 (tdf#50916)
    
    All tests pass now, and I've also handled all significant bugreports
    from tdf#133764. This commit is mainly meant to test this more
    in practice and collect feedback. Depending on how this turns out,
    there may be a backwards compatibility option or something similar,
    but so far I see no significant need for it.
    
    Change-Id: I1a946f4e0b51be5acf4e25dc773e7694c2b17b48
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131180
    Tested-by: Jenkins
    Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Comment 2 Aron Budea 2022-03-23 13:22:58 UTC
For me it doesn't freeze completely, but it does freeze for several seconds.

LO 7.4.0.0.alpha0+ (4a46a74a3de0ac7df5d3ce949dda5e809c1729ab) / Ubuntu.
Comment 3 Commit Notification 2022-03-29 12:25:53 UTC
Luboš Luňák committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/bc601af632861896bdfaa14c96daf1a7ffdfcf71

avoid repeated calls to ScMarkData::GetMarkedRanges() (tdf#148147)

It will be available in 7.4.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 4 Michael Weghorn 2022-03-30 10:02:03 UTC
Thanks!

Fix verified with

Version: 7.4.0.0.alpha0+ / LibreOffice Community
Build ID: a3988b2d147a2442b348d58b79dbd6e71472b7af
CPU threads: 12; OS: Linux 5.16; UI render: default; VCL: gtk3
Locale: en-GB (en_GB.UTF-8); UI: en-US
Calc: threaded

(There's still a lag of a few seconds in a debug build before the menu appears, but it opens instantly in a release build. It's well possible that there was a similar lag in debug builds before default number of columns was increased.)

(In reply to Aron Budea from comment #2)
> For me it doesn't freeze completely, but it does freeze for several seconds.
> 
> LO 7.4.0.0.alpha0+ (4a46a74a3de0ac7df5d3ce949dda5e809c1729ab) / Ubuntu.

My observation was with a debug build, where "nothing happened" at least for a long time and I had to switch to a terminal and kill the soffice process for my desktop environment to become responsive again.