Bug 56218 - Deadlock trying to bring up a quick fix proposal
Summary: Deadlock trying to bring up a quick fix proposal
Status: RESOLVED DUPLICATE of bug 55867
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Text (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows XP
: P3 critical (vote)
Target Milestone: ---   Edit
Assignee: JDT-UI-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-03-25 14:39 EST by Jean-Michel Lemieux CLA
Modified: 2004-03-25 17:50 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jean-Michel Lemieux CLA 2004-03-25 14:39:07 EST
I20040325

I was editing a class which contained several compile errors. I clicked on a 
class name expecting to get the "add constructor" proposal, but instead 
Eclipse locked up and I had to kill the progress. I lost work :(

Full thread dump Java HotSpot(TM) Client VM (1.4.2_02-b03 mixed mode):

"Worker-7" prio=5 tid=0x0578db88 nid=0xaa4 in Object.wait() [4d8f000..4d8fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:184)
        - locked <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:21
0)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"Worker-6" prio=5 tid=0x0566a4a8 nid=0xc38 in Object.wait() [4d4f000..4d4fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:184)
        - locked <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:21
0)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"Worker-5" prio=5 tid=0x03476cd0 nid=0x5a8 in Object.wait() [41ef000..41efd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:184)
        - locked <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:21
0)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x0366c488 
n
id=0x8d4 in Object.wait() [4cdf000..4cdfd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1202c5a0> (a 
org.eclipse.jface.text.reconciler.DirtyRegi
onQueue)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:161)
        - locked <0x1202c5a0> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x0375a708 
n
id=0x5d4 in Object.wait() [4c1f000..4c1fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x11e8a850> (a 
org.eclipse.jface.text.reconciler.DirtyRegi
onQueue)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:161)
        - locked <0x11e8a850> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x03715f80 
n
id=0xbac in Object.wait() [4c7f000..4c7fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x11debef8> (a 
org.eclipse.jface.text.reconciler.DirtyRegi
onQueue)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:161)
        - locked <0x11debef8> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x036eb770 
n
id=0x91c in Object.wait() [416f000..416fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x11d00a08> (a 
org.eclipse.jface.text.reconciler.DirtyRegi
onQueue)
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread
.run(AbstractReconciler.java:161)
        - locked <0x11d00a08> (a 
org.eclipse.jface.text.reconciler.DirtyRegionQu
eue)

"Java indexing" daemon prio=4 tid=0x03568690 nid=0xe10 in Object.wait() 
[4b6f000
..4b6fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10f4a9b0> (a 
org.eclipse.jdt.internal.core.search.indexi
ng.IndexManager)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobMan
ager.java:327)
        - locked <0x10f4a9b0> (a 
org.eclipse.jdt.internal.core.search.indexing.I
ndexManager)
        at java.lang.Thread.run(Thread.java:534)

"Thread-10" prio=5 tid=0x031e4e30 nid=0xa90 runnable [42cf000..42cfd8c]
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at com.jcraft.jsch.IO.getByte(IO.java:71)
        at com.jcraft.jsch.Session.read(Session.java:602)
        at com.jcraft.jsch.Session.run(Session.java:880)
        at java.lang.Thread.run(Thread.java:534)

"Thread-6" prio=5 tid=0x0358ead0 nid=0x838 runnable [428f000..428fd8c]
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at com.jcraft.jsch.IO.getByte(IO.java:71)
        at com.jcraft.jsch.Session.read(Session.java:602)
        at com.jcraft.jsch.Session.run(Session.java:880)
        at java.lang.Thread.run(Thread.java:534)

"Worker-4" prio=5 tid=0x034bd100 nid=0xcc4 in Object.wait() [50df000..50dfd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:184)
        - locked <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:21
0)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"Worker-3" prio=5 tid=0x0347cd10 nid=0x720 in Object.wait() [424f000..424fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:184)
        - locked <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:21
0)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"Worker-1" prio=5 tid=0x0342bb50 nid=0x770 in Object.wait() [41af000..41afd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:184)
        - locked <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:21
0)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"Worker-0" prio=5 tid=0x0340d368 nid=0xce0 in Object.wait() [3f8f000..3f8fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:184)
        - locked <0x1068fe40> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob
(WorkerPool.java:21
0)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

"Start Level Event Dispatcher" daemon prio=5 tid=0x031a40f8 nid=0x54c in 
Object.
wait() [33bf000..33bfd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10570b78> (a 
org.eclipse.osgi.framework.eventmgr.EventTh
read)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent
(EventThr
ead.java:167)
        - locked <0x10570b78> (a 
org.eclipse.osgi.framework.eventmgr.EventThread
)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run
(EventThread.java:
118)

"Framework Event Dispatcher" daemon prio=5 tid=0x031a67d8 nid=0x24c in 
Object.wa
it() [337f000..337fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10570c70> (a 
org.eclipse.osgi.framework.eventmgr.EventTh
read)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent
(EventThr
ead.java:167)
        - locked <0x10570c70> (a 
org.eclipse.osgi.framework.eventmgr.EventThread
)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run
(EventThread.java:
118)

"Signal Dispatcher" daemon prio=10 tid=0x00a105e8 nid=0xa68 waiting on 
condition
 [0..0]

"YJP CPU Sampler" daemon prio=5 tid=0x0003dea8 nid=0xe30 runnable [0..0]

"YJP RequestServer" daemon prio=5 tid=0x0003d548 nid=0xa50 runnable 
[2fdf000..2f
dfd8c]
        at java.net.PlainSocketImpl.socketAccept(Native Method)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:353)
        - locked <0x104fbd60> (a java.net.PlainSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:448)
        at java.net.ServerSocket.accept(ServerSocket.java:419)
        at com.yourkit.runtime.RequestServer.startServerImpl
(RequestServer.java:
180)
        at com.yourkit.runtime.RequestServer.access$000(RequestServer.java:18)
        at com.yourkit.runtime.RequestServer$1.run(RequestServer.java:56)

"Finalizer" daemon prio=9 tid=0x009bfb50 nid=0xb14 in Object.wait() 
[2b5f000..2b
5fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x104fbe10> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x104fbe10> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x009be720 nid=0x780 in Object.wait() 
[2b
1f000..2b1fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x104fbe78> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Object.java:429)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:115)
        - locked <0x104fbe78> (a java.lang.ref.Reference$Lock)

"main" prio=7 tid=0x000352c8 nid=0xb54 in Object.wait() [7e000..7fc3c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x111082d8> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:429)
        at org.eclipse.jdt.internal.ui.javaeditor.ASTProvider.getAST
(ASTProvider
.java:327)
        - locked <0x111082d8> (a java.lang.Object)
        at org.eclipse.jdt.internal.ui.text.correction.AssistContext.getASTRoot
(
AssistContext.java:67)
        at 
org.eclipse.jdt.internal.ui.text.correction.LocalCorrectionsSubProces
sor.addConstructorFromSuperclassProposal(LocalCorrectionsSubProcessor.java:608)
        at 
org.eclipse.jdt.internal.ui.text.correction.QuickFixProcessor.process
(QuickFixProcessor.java:325)
        at 
org.eclipse.jdt.internal.ui.text.correction.QuickFixProcessor.getCorr
ections(QuickFixProcessor.java:172)
        at 
org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.c
ollectCorrections(JavaCorrectionProcessor.java:246)
        at 
org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.p
rocessProblemAnnotations(JavaCorrectionProcessor.java:234)
        at 
org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionProcessor.c
omputeCompletionProposals(JavaCorrectionProcessor.java:192)
        at 
org.eclipse.jface.text.contentassist.ContentAssistant.computeCompleti
onProposals(ContentAssistant.java:1447)
        at 
org.eclipse.jface.text.contentassist.CompletionProposalPopup.computeP
roposals(CompletionProposalPopup.java:238)
        at 
org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$7
(CompletionProposalPopup.java:234)
        at org.eclipse.jface.text.contentassist.CompletionProposalPopup$1.run
(Co
mpletionProposalPopup.java:194)
        at org.eclipse.swt.custom.BusyIndicator.showWhile
(BusyIndicator.java:84)

        at 
org.eclipse.jface.text.contentassist.CompletionProposalPopup.showProp
osals(CompletionProposalPopup.java:189)
        at 
org.eclipse.jface.text.contentassist.ContentAssistant.showPossibleCom
pletions(ContentAssistant.java:1298)
        at 
org.eclipse.jdt.internal.ui.text.correction.JavaCorrectionAssistant.s
howPossibleCompletions(JavaCorrectionAssistant.java:160)
        at 
org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor$AdaptedS
ourceViewer.doOperation(CompilationUnitEditor.java:172)
        at org.eclipse.ui.texteditor.TextOperationAction$1.run
(TextOperationActi
on.java:122)
        at org.eclipse.swt.custom.BusyIndicator.showWhile
(BusyIndicator.java:84)

        at org.eclipse.ui.texteditor.TextOperationAction.run
(TextOperationAction
.java:120)
        at org.eclipse.jface.action.Action.runWithEvent(Action.java:881)
        at org.eclipse.ui.commands.ActionHandler.execute(ActionHandler.java:68)
        at org.eclipse.ui.internal.commands.Command.execute(Command.java:173)
        at org.eclipse.ui.internal.keys.WorkbenchKeyboard.executeCommand
(Workben
chKeyboard.java:460)
        at org.eclipse.ui.internal.keys.WorkbenchKeyboard.press
(WorkbenchKeyboar
d.java:834)
        at org.eclipse.ui.internal.keys.WorkbenchKeyboard.processKeyEvent
(Workbe
nchKeyboard.java:875)
        at 
org.eclipse.ui.internal.keys.WorkbenchKeyboard.filterKeySequenceBindi
ngs(WorkbenchKeyboard.java:519)
        at org.eclipse.ui.internal.keys.WorkbenchKeyboard.access$2
(WorkbenchKeyb
oard.java:485)
        at org.eclipse.ui.internal.keys.WorkbenchKeyboard$1.handleEvent
(Workbenc
hKeyboard.java:258)
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)
        at org.eclipse.swt.widgets.Display.filterEvent(Display.java:705)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:768)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:793)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:778)
        at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1720)
        at org.eclipse.swt.widgets.Control.sendKeyEvent(Control.java:1716)
        at org.eclipse.swt.widgets.Control.WM_KEYDOWN(Control.java:3487)
        at org.eclipse.swt.widgets.Control.windowProc(Control.java:2971)
        at org.eclipse.swt.widgets.Display.windowProc(Display.java:3152)
        at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
        at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:1374)
        at org.eclipse.swt.internal.BidiUtil.windowProc(BidiUtil.java:647)
        at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
        at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1450)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2260)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1562)
        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1536)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench
(Workbench.jav
a:257)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:139)
        at org.eclipse.ui.internal.ide.IDEApplication.run
(IDEApplication.java:90
)
        at org.eclipse.core.internal.runtime.PlatformActivator$1.run
(PlatformAct
ivator.java:288)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run
(EclipseStarter.ja
va:232)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run
(EclipseStarter.ja
va:116)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.
java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAcces
sorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:315)
        at org.eclipse.core.launcher.Main.run(Main.java:740)
        at org.eclipse.core.launcher.Main.main(Main.java:724)

"VM Thread" prio=5 tid=0x009fb6b0 nid=0xf60 runnable

"VM Periodic Task Thread" prio=10 tid=0x009fcd28 nid=0xc3c waiting on condition

"Suspend Checker Thread" prio=10 tid=0x0003e0a0 nid=0xfa4 runnable
Comment 1 Dirk Baeumer CLA 2004-03-25 17:50:00 EST
This got fixed in our 12:00 build submission.

*** This bug has been marked as a duplicate of 55867 ***