Bug 224938 - Deadlock AWT-EventQueue-0 <-> Code Completion
Deadlock AWT-EventQueue-0 <-> Code Completion
Status: VERIFIED FIXED
Product: java
Classification: Unclassified
Component: Editor
7.3
PC Windows 7
: P2 (vote)
: 7.3
Assigned To: Dusan Balek
issues@java
: 73_HR_FIX
: 225235 225412 225882 (view as bug list)
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-01-16 02:31 UTC by 280Z28
Modified: 2013-02-08 11:37 UTC (History)
4 users (show)

See Also:
Issue Type: DEFECT
:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description 280Z28 2013-01-16 02:31:38 UTC
Here are the thread stacks:

Java-level deadlock has been detected
 
This means that some threads are blocked waiting to enter a synchronization block or
waiting to reenter a synchronization block after an Object.wait() call, where each thread
owns one monitor while trying to obtain another monitor already held by another thread.
 
Deadlock:


AWT-EventQueue-0 is waiting to lock java.util.concurrent.locks.ReentrantLock$FairSync@78a07411 which is held by Code Completion
Code Completion is waiting to lock org.netbeans.modules.editor.completion.CompletionImpl@59bc1e2d which is held by AWT-EventQueue-0




Thread stacks


AWT-EventQueue-0 [WAITING]
sun.misc.Unsafe.park(native method)
java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:867)
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197)
java.util.concurrent.locks.ReentrantLock$FairSync.lock(ReentrantLock.java:229)
java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:290)
org.netbeans.modules.parsing.impl.TaskProcessor.runUserTask(TaskProcessor.java:190)
org.netbeans.modules.parsing.api.ParserManager.parse(ParserManager.java:104)
org.netbeans.modules.editor.java.LazyTypeCompletionItem.accept(LazyTypeCompletionItem.java:116)
org.netbeans.modules.editor.completion.CompletionImpl$1.accept(CompletionImpl.java:142)
org.netbeans.modules.editor.completion.CompletionImpl.requestShowCompletionPane(CompletionImpl.java:956)
org.netbeans.modules.editor.completion.CompletionImpl.finishNotify(CompletionImpl.java:1453)
org.netbeans.modules.editor.completion.CompletionResultSetImpl.finish(CompletionResultSetImpl.java:274)
org.netbeans.spi.editor.completion.CompletionResultSet.finish(CompletionResultSet.java:245)
org.netbeans.modules.editor.java.JavaCompletionProvider$JavaCompletionQuery.filter(JavaCompletionProvider.java:417)
org.netbeans.spi.editor.completion.support.AsyncCompletionTask.refreshImpl(AsyncCompletionTask.java:198)
org.netbeans.spi.editor.completion.support.AsyncCompletionTask.refresh(AsyncCompletionTask.java:149)
org.netbeans.modules.editor.completion.CompletionImpl.refreshResultSets(CompletionImpl.java:1670)
org.netbeans.modules.editor.completion.CompletionImpl.access$2800(CompletionImpl.java:110)
org.netbeans.modules.editor.completion.CompletionImpl$Result.invokeRefresh(CompletionImpl.java:1790)
org.netbeans.modules.editor.completion.CompletionImpl.completionRefresh(CompletionImpl.java:741)
org.netbeans.modules.editor.completion.CompletionImpl.caretUpdate(CompletionImpl.java:374)
javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:407)
javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4417)
javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4439)
org.netbeans.editor.BaseCaret$5.run(BaseCaret.java:958)
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:721)
java.awt.EventQueue.access$200(EventQueue.java:103)
java.awt.EventQueue$3.run(EventQueue.java:682)
java.awt.EventQueue$3.run(EventQueue.java:680)
java.security.AccessController.doPrivileged(native method)
java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
java.awt.EventQueue.dispatchEvent(EventQueue.java:691)
org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
java.awt.EventDispatchThread.run(EventDispatchThread.java:91)


Code Completion [BLOCKED; waiting to lock org.netbeans.modules.editor.completion.CompletionImpl@59bc1e2d]
org.netbeans.modules.editor.completion.CompletionImpl.documentationCancel(CompletionImpl.java:1183)
org.netbeans.modules.editor.completion.CompletionImpl.hideDocumentation(CompletionImpl.java:1200)
org.netbeans.modules.editor.completion.CompletionImpl.hideDocumentation(CompletionImpl.java:1196)
org.netbeans.api.editor.completion.Completion.hideDocumentation(Completion.java:124)
org.netbeans.modules.editor.java.JavaCompletionProvider$JavaCompletionQuery$5.call(JavaCompletionProvider.java:607)
org.netbeans.modules.editor.java.JavaCompletionProvider$JavaCompletionQuery$5.call(JavaCompletionProvider.java:600)
org.netbeans.modules.java.source.JavadocHelper.doGetJavadoc(JavadocHelper.java:320)
org.netbeans.modules.java.source.JavadocHelper.getJavadoc(JavadocHelper.java:237)
org.netbeans.modules.java.source.JavadocHelper.getJavadoc(JavadocHelper.java:216)
org.netbeans.api.java.source.ui.ElementJavadoc.<init>(ElementJavadoc.java:346)
org.netbeans.api.java.source.ui.ElementJavadoc.create(ElementJavadoc.java:158)
org.netbeans.modules.editor.java.JavaCompletionDoc.create(JavaCompletionDoc.java:90)
org.netbeans.modules.editor.java.JavaCompletionProvider$JavaCompletionQuery.resolveDocumentation(JavaCompletionProvider.java:600)
org.netbeans.modules.editor.java.JavaCompletionProvider$JavaCompletionQuery.run(JavaCompletionProvider.java:431)
org.netbeans.modules.editor.java.JavaCompletionProvider$JavaCompletionQuery$Task.run(JavaCompletionProvider.java:5217)
org.netbeans.modules.parsing.impl.TaskProcessor.callUserTask(TaskProcessor.java:584)
org.netbeans.modules.parsing.api.ParserManager$UserTaskAction.run(ParserManager.java:153)
org.netbeans.modules.parsing.api.ParserManager$UserTaskAction.run(ParserManager.java:137)
org.netbeans.modules.parsing.impl.TaskProcessor$2.call(TaskProcessor.java:201)
org.netbeans.modules.parsing.impl.TaskProcessor$2.call(TaskProcessor.java:198)
org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.priorityIO(FileChangedManager.java:176)
org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(ProvidedExtensions.java:360)
org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.java:74)
org.netbeans.modules.parsing.impl.TaskProcessor.runUserTask(TaskProcessor.java:198)
org.netbeans.modules.parsing.api.ParserManager.parse(ParserManager.java:104)
org.netbeans.modules.editor.java.JavaCompletionProvider$JavaCompletionQuery.query(JavaCompletionProvider.java:297)
org.netbeans.spi.editor.completion.support.AsyncCompletionTask.run(AsyncCompletionTask.java:223)
org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1454)
org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2048)
Comment 1 Dusan Balek 2013-01-16 16:38:59 UTC
Fixed in jet-main.

http://hg.netbeans.org/jet-main/rev/e895c098916c
Comment 2 Quality Engineering 2013-01-17 02:49:39 UTC
Integrated into 'main-golden', will be available in build *201301170001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main-golden/rev/e895c098916c
User: Dusan Balek <dbalek@netbeans.org>
Log: Issue #224938: Deadlock AWT-EventQueue-0 <-> Code Completion - fixed.
Comment 3 Jan Lahoda 2013-01-17 14:25:37 UTC
The patch seem fine to me.
Comment 4 Jiri Prox 2013-01-17 15:26:50 UTC
verified in trunk
Comment 5 Jan Lahoda 2013-01-18 16:44:09 UTC
release73:
http://hg.netbeans.org/releases/rev/8f9f0168714b
Comment 6 Quality Engineering 2013-01-19 00:03:00 UTC
Integrated into 'releases', will be available in build *201301182100* or newer. Wait for official and publicly available build.
Changeset: http://hg.netbeans.org/releases/rev/8f9f0168714b
User: Dusan Balek <dbalek@netbeans.org>
Log: Issue #224938: Deadlock AWT-EventQueue-0 <-> Code Completion - fixed.
Comment 7 Jiri Prox 2013-01-25 10:39:50 UTC
v.
Comment 8 Dusan Balek 2013-01-28 16:19:12 UTC
*** Bug 225412 has been marked as a duplicate of this bug. ***
Comment 9 Dusan Balek 2013-01-28 16:19:48 UTC
*** Bug 225235 has been marked as a duplicate of this bug. ***
Comment 10 Dusan Balek 2013-02-08 11:37:37 UTC
*** Bug 225882 has been marked as a duplicate of this bug. ***


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo