Issue 93512

Summary: Mac: Deadlock while installing extensions
Product: General Reporter: kai.sommerfeld
Component: codeAssignee: joerg.skottke
Status: CLOSED FIXED QA Contact: issues@framework <issues>
Severity: Trivial    
Priority: P3 CC: hdu, issues, maho.nakata, nesshof, olaf-openoffice, philipp.lohmann, stefan.baltzer, uwe.luebbers
Version: OOO300m4Keywords: aqua
Target Milestone: OOo 3.0   
Hardware: Mac   
OS: Mac OS X, all   
Issue Type: DEFECT Latest Confirmation in: ---
Developer Difficulty: ---
Issue Depends on:    
Issue Blocks: 88888, 92214    
Attachments:
Description Flags
suggested hotfix none

Description kai.sommerfeld 2008-09-05 11:58:27 UTC
Sometimes, OOo (and also "unopkg gui") deadlocks while installing extensions via
klicking an oxt file in Finder or using "open blah.oxt" in Terminal.
Comment 1 kai.sommerfeld 2008-09-05 11:59:29 UTC
mh: This is a 3.0 show stopper.
Comment 2 joachim.lingner 2008-09-05 15:41:16 UTC
@hdu: as discussed.
Comment 3 hdu@apache.org 2008-09-05 16:09:02 UTC
there seem to be two mutexes involved:
- the solar mutex
- an internal Cocoa mutex

The extension installation thread holds the solar mutex and indirectly tries to get the Cocoa mutex when 
it creates a dialog. The main thread already holds the Cocoa mutex when NSView::drawRect is called and 
its YIELD_GUARD waits on the solar mutex => a classical dead lock
Comment 4 hdu@apache.org 2008-09-05 16:12:22 UTC
Created attachment 56271 [details]
suggested hotfix
Comment 5 hdu@apache.org 2008-09-08 09:28:26 UTC
Fixed in CWS i93512

@mh: please decide if this problem block issue 88888
Comment 6 hdu@apache.org 2008-09-08 10:52:16 UTC
@jsk: please verify in CWS i93512
Comment 7 Martin Hollmichel 2008-09-08 11:59:44 UTC
add to blocker list.
Comment 8 stefan.baltzer 2008-09-08 15:43:15 UTC
SBA->JSK: As discussed, I found a scenario to reproduce:
 - Start an En_US installation of OOo
 - Tools-Extension Manager
 - Click "Add"
 - Select a dict extension that is already installed (i.e. En_US)
 - In upcoming dialog, click "For All Users"
 - [Now the dialog "...already installed, do you wish to replace..." should come up]
-> Deadlock.

Verified the fix for this scenario in CWS i93512.
Comment 9 hdu@apache.org 2008-09-08 16:10:06 UTC
@pl: undoing your change for issue 92075 in CWS vcl30stop2
http://gsl.openoffice.org/source/browse/gsl/vcl/aqua/source/window/salframe.cxx?
r1=1.66&r2=1.66.16.1
seems to fix this deadlock too.
Comment 10 Raphael Bircher 2008-09-09 02:53:27 UTC
Fixed in Master
Tested with 3.0.0 RC1 PPC Version on Tiger
Closing Issue
Comment 11 kai.sommerfeld 2008-09-09 07:50:43 UTC
rbircher: Sorry, but the fix cannot be in the master yet, because the
corresponding CWS is not yet integrated. It might be the case that you did not
encounter the deadlock on your system. This is the nature of this bug. It does
not occue always and everywhere. Reopening.
Comment 12 kai.sommerfeld 2008-09-09 07:51:47 UTC
Restoring correct bug status (1)
Comment 13 kai.sommerfeld 2008-09-09 07:52:17 UTC
Restoring correct bug status (2)
Comment 14 joerg.skottke 2008-10-29 10:03:22 UTC
No deadlock in m9, closing