Possible fix to Windows timeouts in CI - rebase on master recommended

Mike Kaganski mikekaganski at hotmail.com
Sat Mar 6 16:41:28 UTC 2021


During last several months, I had experienced local 'make check' builds 
hangs on Windows, and debugging showed that the problem was a deadlock 
between a clipboard COM object being deleted on main thread and waiting 
for the clipboard MTA thread, and the clipboard thread waiting for main 
thread to process some event (unfortunately, I have no sample stack 
trace at hand). That was intermittent, but often enough to be annoying; 
however, that was not affecting CI much as far as I could see.

But during last several days, I saw many Windows builds timed out, and I 
suspected that this might be the same underlying issue (unfortunately, 
CI does not provide the backtrace for timed out Windows builds). I 
suppose that this is not prevented by Noel's nice patch 
https://gerrit.libreoffice.org/c/core/+/111498, because IIUC it only 
prevented writing/reading system clipboard when performing 
clipboard-related tests, not listening to clipboard changes.

The problem could get worsened by 
https://gerrit.libreoffice.org/c/core/+/111825, which made sure that the 
COM object was created each time, when previously many such events could 
result in failed clipboard opening, and thus skipped COM object creation.

So I attempted to address the underlying issue with 
https://gerrit.libreoffice.org/c/core/+/112044, to not create COM 
clipboard objects in response to "clipboard changed" event (and only 
create those when actually pasting from system clipboard).

The bottom line is: the said patch is merged now, and you might want to 
rebase to see if the timeouts will go.

Best regards,
Mike Kaganski

More information about the LibreOffice mailing list