Bug 119840 - FILEOPEN DOCX: Long file open and post-processing time after file open
Summary: FILEOPEN DOCX: Long file open and post-processing time after file open
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
(earliest affected) release
Hardware: All All
: medium normal
Assignee: Not Assigned
Keywords: bibisected, bisected, filter:docx, perf, regression
Depends on:
Blocks: DOCX
  Show dependency treegraph
Reported: 2018-09-13 12:07 UTC by Telesto
Modified: 2019-10-21 02:29 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:

Example file part 1 (11.14 MB, application/x-zip-compressed)
2018-09-13 12:07 UTC, Telesto
Example file part 2 (25.00 MB, application/octet-stream)
2018-09-13 12:08 UTC, Telesto

Note You need to log in before you can comment on or make changes to this bug.
Description Telesto 2018-09-13 12:07:03 UTC
FILEOPEN DOCX: Long file open and post-processing time after file open

Steps to Reproduce:
1. Open the attached file
2. Monitor time from file open until CPU usage drops back to 'idle'

Actual Results:
2 minutes

Expected Results:
45 seconds or so

Reproducible: Always

User Profile Reset: No

Additional Info:
Found in
Build ID: d5a2202f955657e427670a87c2d4e5638884517b
CPU threads: 4; OS: Windows 6.3; UI render: default; 
TinderBox: Win-x86@42, Branch:master, Time: 2018-09-12_02:38:23
Locale: nl-NL (nl_NL); Calc: CL

and in

OK inVersie: 
Build ID: f3153a8b245191196a4b6b9abd1d0da16eead600
Locale: nl_NL

Note: the comparison is not totally fair; has page count issues (pages are still rendered when scrolling down)
Build ID: 87ac0b1e75a880a68ecb748bd4b34ae5a3d2ae98
Locale: nl-NL (nl_NL)
Comment 1 Telesto 2018-09-13 12:07:35 UTC
Created attachment 144833 [details]
Example file part 1
Comment 2 Telesto 2018-09-13 12:08:17 UTC
Created attachment 144834 [details]
Example file part 2
Comment 3 Telesto 2018-09-13 12:16:35 UTC
Similar issue when saving the file to ODT
Comment 4 Xisco Faulí 2018-10-19 11:54:40 UTC
Time in

Build ID: 5fb66ae5595b7435e8954df31473fad15a74b8c2
CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; 
Locale: en-US (ca_ES.UTF-8); Calc: threaded


Build ID: 3ca42d8d51174010d5e8a32b96e9b4c0b3730a53
Threads 4; Ver: 4.10; Render: default; 

real	2m13.149s
user	2m14.268s
sys	0m2.848s

while in

Build ID: c15927f20d4727c3b8de68497b6949e72f9e6e9e

real	1m12.708s
user	1m9.145s
sys	0m1.118s
Comment 5 Buovjaga 2018-10-19 19:03:16 UTC
With bibisect repo win32-5.0, both master and oldest dropped very quickly to 10% CPU and below after loading the file and kept fluctuating, lowest something like 3%.
With win32-5.1, master kept the CPU steadily around 25%, not dropping below 20% anyways (hammering one core).
So rather than "time to idle", I decided "good" equals sharp drop off and "bad" steady hammering for an extended period.

Bibisect points to https://cgit.freedesktop.org/libreoffice/core/commit/?id=48c2815dd20cf20eeec8bb4e003000f4a3d13291

tdf#91727 - Unwind non-dispatch of idle handlers.

Adding Cc: to Michael Meeks
Comment 6 Telesto 2018-10-19 21:16:55 UTC
(In reply to Buovjaga from comment #5)
> With win32-5.1, master kept the CPU steadily around 25%, not dropping below
> 20% anyways (hammering one core).

Not 100% sure if this is the root cause. I have be attempting to do bibisects in that area. In certain cases the performance quite good, even with the permanent CPU hammering (if i remember correctly).

The hammering might be a Windows only thing (not 100% sure). So the MacOS bibisect repro might be the better alternative
Comment 7 Buovjaga 2018-10-20 07:33:11 UTC
Just tested on Linux master and it does hammer like Windows.

The multipart zip required me to use command line to extract:
7z x GS52-GettingStartedLO.z01

Arch Linux 64-bit
Build ID: 9a373521d7a328197a4bf9abeb0a981b7acba896
CPU threads: 8; OS: Linux 4.18; UI render: default; VCL: gtk3_kde5; 
Locale: fi-FI (fi_FI.UTF-8); Calc: threaded
Built on 19 October 2018
Comment 8 QA Administrators 2019-10-21 02:29:19 UTC
Dear Telesto,

To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year.

There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present.

If you have time, please do the following:

Test to see if the bug is still present with the latest version of LibreOffice from https://www.libreoffice.org/download/

If the bug is present, please leave a comment that includes the information from Help - About LibreOffice.
If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave a comment that includes the information from Help - About LibreOffice.

Please DO NOT

Update the version field
Reply via email (please reply directly on the bug tracker)
Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not 
appropriate in this case)

If you want to do more to help you can test to see if your issue is a REGRESSION. To do so:
1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3) from http://downloadarchive.documentfoundation.org/libreoffice/old/

2. Test your bug
3. Leave a comment with your results.
4a. If the bug was present with 3.3 - set version to 'inherited from OOo';
4b. If the bug was not present in 3.3 - add 'regression' to keyword

Feel free to come ask questions or to say hello in our QA chat: https://kiwiirc.com/nextclient/irc.freenode.net/#libreoffice-qa

Thank you for helping us make LibreOffice even better for everyone!

Warm Regards,
QA Team