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 156937 - Editor locks-up when invoking code completion
Summary: Editor locks-up when invoking code completion
Status: RESOLVED FIXED
Alias: None
Product: obsolete
Classification: Unclassified
Component: languages (show other bugs)
Version: 6.x
Hardware: PC All
: P1 blocker (vote)
Assignee: issues@obsolete
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-16 09:16 UTC by J Bachorik
Modified: 2009-02-19 21:22 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
Proposed patch (14.46 KB, patch)
2009-01-16 10:43 UTC, J Bachorik
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description J Bachorik 2009-01-16 09:16:27 UTC
When invoking code completion in a NBS defined language the editor locks-up.

The reason seems to be this:

"AWT-EventQueue-1" prio=10 tid=0x09f60c00 nid=0x33a0 in Object.wait() [0xb05fc000..0xb05fceb0]
   java.lang.Thread.State: WAITING (on object monitor)
	at java.lang.Object.wait(Native Method)
	- waiting on <0x72494920> (a org.netbeans.modules.languages.dataobject.LanguagesEditorKit$LanguagesDocument)
	at java.lang.Object.wait(Object.java:485)
	at javax.swing.text.AbstractDocument.writeLock(AbstractDocument.java:1329)
	- locked <0x72494920> (a org.netbeans.modules.languages.dataobject.LanguagesEditorKit$LanguagesDocument)
	at org.netbeans.editor.BaseDocument.extWriteLock(BaseDocument.java:1640)
	- locked <0x72494920> (a org.netbeans.modules.languages.dataobject.LanguagesEditorKit$LanguagesDocument)
	at org.netbeans.editor.BaseDocument.insertString(BaseDocument.java:716)
	at org.netbeans.modules.languages.features.CompletionSupport.defaultAction(CompletionSupport.java:233)
	at org.netbeans.modules.languages.features.CompletionSupport.instantSubstitution(CompletionSupport.java:307)
	at org.netbeans.modules.editor.completion.CompletionImpl$7.run(CompletionImpl.java:904)
	at org.netbeans.modules.editor.completion.CompletionImpl.runInAWT(CompletionImpl.java:1429)
	at org.netbeans.modules.editor.completion.CompletionImpl.requestShowCompletionPane(CompletionImpl.java:929)
	at org.netbeans.modules.editor.completion.CompletionImpl.finishNotify(CompletionImpl.java:1351)
	at org.netbeans.modules.editor.completion.CompletionResultSetImpl.finish(CompletionResultSetImpl.java:271)
	at org.netbeans.spi.editor.completion.CompletionResultSet.finish(CompletionResultSet.java:242)
	at org.netbeans.modules.languages.features.CompletionProviderImpl$CompletionResult.finish(CompletionProviderImpl.java:586)
	at org.netbeans.modules.languages.features.CompletionProviderImpl$CompletionTaskImpl$1.run(CompletionProviderImpl.java:362)
	at org.netbeans.modules.parsing.api.ParserManager$UserTaskAction.run(ParserManager.java:123)
	at org.netbeans.modules.parsing.api.ParserManager$UserTaskAction.run(ParserManager.java:105)
	at org.netbeans.modules.parsing.impl.TaskProcessor.runUserTask(TaskProcessor.java:191)
	at org.netbeans.modules.parsing.api.ParserManager.parse(ParserManager.java:96)
	at
org.netbeans.modules.languages.features.CompletionProviderImpl$CompletionTaskImpl.addParserTags(CompletionProviderImpl.java:356)
	at
org.netbeans.modules.languages.features.CompletionProviderImpl$CompletionTaskImpl.compute(CompletionProviderImpl.java:274)
	at org.netbeans.modules.languages.features.CompletionProviderImpl$CompletionTaskImpl.query(CompletionProviderImpl.java:201)
	at org.netbeans.modules.editor.completion.CompletionImpl.queryResultSets(CompletionImpl.java:1535)
	at org.netbeans.modules.editor.completion.CompletionImpl.completionQuery(CompletionImpl.java:628)
	at org.netbeans.modules.editor.completion.CompletionImpl.showCompletion(CompletionImpl.java:809)
	at org.netbeans.modules.editor.completion.CompletionImpl.access$2300(CompletionImpl.java:102)
	at org.netbeans.modules.editor.completion.CompletionImpl$CompletionShowAction.actionPerformed(CompletionImpl.java:1455)
	at org.netbeans.modules.editor.completion.CompletionImpl.dispatchKeyEvent(CompletionImpl.java:551)
	at org.netbeans.modules.editor.completion.CompletionImpl.keyPressed(CompletionImpl.java:366)
	at java.awt.AWTEventMulticaster.keyPressed(AWTEventMulticaster.java:233)
	at java.awt.AWTEventMulticaster.keyPressed(AWTEventMulticaster.java:232)
	at java.awt.Component.processKeyEvent(Component.java:6092)
	at javax.swing.JComponent.processKeyEvent(JComponent.java:2799)
	at java.awt.Component.processEvent(Component.java:5911)
	at java.awt.Container.processEvent(Container.java:2023)
	at java.awt.Component.dispatchEventImpl(Component.java:4501)
	at java.awt.Container.dispatchEventImpl(Container.java:2081)
	at java.awt.Component.dispatchEvent(Component.java:4331)
	at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1848)
	at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:704)
	at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:969)
	at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:841)
	at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:668)
	at java.awt.Component.dispatchEventImpl(Component.java:4373)
	at java.awt.Container.dispatchEventImpl(Container.java:2081)
	at java.awt.Window.dispatchEventImpl(Window.java:2458)
	at java.awt.Component.dispatchEvent(Component.java:4331)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
	at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:104)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

   Locked ownable synchronizers:
	- <0x71304db0> (a java.util.concurrent.locks.ReentrantLock$FairSync)


Proposed patch will be attached shortly.
Comment 1 J Bachorik 2009-01-16 10:43:40 UTC
Created attachment 75882 [details]
Proposed patch
Comment 2 Jan Jancura 2009-01-19 13:19:55 UTC
fixed in tunk
Comment 3 Quality Engineering 2009-01-20 07:31:42 UTC
Integrated into 'main-golden', will be available in build *200901200201* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main/rev/a8d0d37b5f23
User: Jan Jancura <jjancura@netbeans.org>
Log: #156937: Editor locks-up when invoking code completion