This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 175528

Summary: Deadlock when modal dialog for UQE is opened
Product: platform Reporter: mslama <mslama>
Component: TextAssignee: mslama <mslama>
Status: RESOLVED FIXED    
Severity: blocker CC: jtulach
Priority: P2    
Version: 6.x   
Hardware: All   
OS: All   
Issue Type: DEFECT Exception Reporter:
Attachments: Deadlock thread dump

Description mslama 2009-10-27 16:02:35 UTC
In this case still UI initialization is in progress and it uses new event queue created for modal dialog. This happens
when CE shows dialog for UserQuestionException. Steps to reproduce:
1.Start IDE.
2.Open big java file > 1MB
3.Restart IDE.
4.Modal dialog will be opened and deadlock happens. Reason is that in new event queue someone can call CE.getEditorPane

Fix is to add flag and return null from CE.getEditorPane ie. not block CE.getEditorPane. BTW reason for this is that
JavaDataObject.JavaEditorSupport.Env overrides findCloneableOpenSupport. I will file separate issue for it.
Comment 1 mslama 2009-10-27 16:16:04 UTC
Created attachment 90143 [details]
Deadlock thread dump
Comment 2 mslama 2009-10-27 16:19:11 UTC
It is broken for big Java files which use JavaEditorSupport.
Comment 3 mslama 2009-10-29 14:52:22 UTC
core-main #875bb9284a61
Comment 4 mslama 2009-10-29 14:58:43 UTC
1.CloneableEditor.getEditorPane now returns null when modal dialog for handling UQE is displayed. Also warning is logged
in such case so we can investigate such case.
2.DataEditorSupport.Env now handles warned flag for big files differently so Env.findCloneableOpenSupport is not
overriden in DataEditorSupport.Env and also there is no constraint in overriding this method in subclasses of
DataEditorSupport.Env. There is now static HashSet of already warned file objects which is also set during deserialization.
Comment 5 Quality Engineering 2009-10-30 11:05:49 UTC
Integrated into 'main-golden', will be available in build *200910300201* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main-golden/rev/875bb9284a61
User: Marek Slama <mslama@netbeans.org>
Log: #175528: Improve handling of big files when DES.Env is deserialized.