Bug 44542 - Infinite wait trying to create launch configuration
Summary: Infinite wait trying to create launch configuration
Status: RESOLVED WORKSFORME
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.0 M6   Edit
Assignee: JDT-Core-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-10-09 09:02 EDT by Jonathan Gossage CLA
Modified: 2003-12-17 17:27 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jonathan Gossage CLA 2003-10-09 09:02:58 EDT
I was trying to create a new Junit launch configuration and asked Eclipse to 
search for existing Junit suites. The progress dialog came up and hung at 
about 15%. After 5 min. I took a full thread dump which is attacted. The 
system appears to be deadlocked on something since there is no CPU activity 
showing.

I am running on a dual processor 933 Mhz machine with 1GB of memory and 512MB 
assigned to Eclipse.

I am running Windows XP with service pack 1.

I am running Sun JDK 1.4.1_02.

I am running Eclipse I20030917.

JspUIPlugin: startup
Full thread dump Java HotSpot(TM) Client VM (1.4.1_02-b06 mixed mode):

"ModalContext" prio=7 tid=0x0AF83468 nid=0xd74 runnable [bb5f000..bb5fd8c]
        at sun.nio.cs.SingleByteDecoder.decodeArrayLoop
(SingleByteDecoder.java:46)
        at sun.nio.cs.SingleByteDecoder.decodeLoop(SingleByteDecoder.java:90)
        at java.nio.charset.CharsetDecoder.decode(CharsetDecoder.java:536)
        at sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:438)
        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:180)
        - locked <04A6A918> (a java.io.InputStreamReader)
        at java.io.InputStreamReader.read(InputStreamReader.java:167)
        at 
org.eclipse.jdt.internal.compiler.util.Util.getInputStreamAsCharArray
(Util.java:279)
        at org.eclipse.jdt.internal.core.Util.getResourceContentsAsCharArray
(Util.java:711)
        at org.eclipse.jdt.internal.core.Util.getResourceContentsAsCharArray
(Util.java:700)
        at 
org.eclipse.jdt.internal.core.search.matching.PossibleMatch.getContents
(PossibleMatch.java:55)
        at org.eclipse.jdt.internal.compiler.parser.Parser.parse
(Parser.java:5934)
        at org.eclipse.jdt.internal.compiler.parser.Parser.parse
(Parser.java:5916)
        at org.eclipse.jdt.internal.compiler.parser.Parser.dietParse
(Parser.java:4663)
        at 
org.eclipse.jdt.internal.core.search.matching.MatchLocator.buildBindings
(MatchLocator.java:200)
        at 
org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches
(MatchLocator.java:543)
        at 
org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches
(MatchLocator.java:602)
        at 
org.eclipse.jdt.internal.core.search.matching.MatchLocator.locateMatches
(MatchLocator.java:711)
        at org.eclipse.jdt.core.search.SearchEngine.search
(SearchEngine.java:515)
        at org.eclipse.jdt.internal.junit.util.TestSearchEngine.searchMethod
(TestSearchEngine.java:103)
        at org.eclipse.jdt.internal.junit.util.TestSearchEngine.searchMethod
(TestSearchEngine.java:94)
        at 
org.eclipse.jdt.internal.junit.util.TestSearchEngine.searchSuiteMethods
(TestSearchEngine.java:180)
        at org.eclipse.jdt.internal.junit.util.TestSearchEngine.collectTypes
(TestSearchEngine.java:160)
        at org.eclipse.jdt.internal.junit.util.TestSearchEngine.doFindTests
(TestSearchEngine.java:127)
        at org.eclipse.jdt.internal.junit.util.TestSearchEngine$1.run
(TestSearchEngine.java:113)
        at org.eclipse.jface.operation.ModalContext$ModalContextThread.run
(ModalContext.java:101)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x0AD3E328 
nid=0xcb4 runnable [b68f000..b68fd8c]
        at 
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run
(AbstractReconciler.java:170)

"Java indexing" daemon prio=4 tid=0x0AEED320 nid=0xcf4 in Object.wait() 
[b64f000..b64fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0372BE90> (a 
org.eclipse.jdt.internal.core.search.indexing.IndexManager)
        at java.lang.Object.wait(Object.java:426)
        at org.eclipse.jdt.internal.core.search.processing.JobManager.run
(JobManager.java:358)
        - locked <0372BE90> (a 
org.eclipse.jdt.internal.core.search.indexing.IndexManager)
        at java.lang.Thread.run(Thread.java:536)

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

"Finalizer" daemon prio=9 tid=0x009A5220 nid=0xd78 in Object.wait() 
[ab1f000..ab1fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <02F566D0> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <02F566D0> (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=0x009EDDF8 nid=0x4e0 in Object.wait() 
[aadf000..aadfd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <02F56738> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Object.java:426)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:113)
        - locked <02F56738> (a java.lang.ref.Reference$Lock)

"main" prio=7 tid=0x000354E8 nid=0x774 runnable [7e000..7fc40]
        at org.eclipse.swt.internal.win32.OS.WaitMessage(Native Method)
        at org.eclipse.swt.widgets.Display.sleep(Display.java:2484)
        at org.eclipse.jface.operation.ModalContext$ModalContextThread.block
(ModalContext.java:137)
        at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:261)
        at org.eclipse.jface.dialogs.ProgressMonitorDialog.run
(ProgressMonitorDialog.java:357)
        at org.eclipse.jdt.internal.junit.util.TestSearchEngine.findTests
(TestSearchEngine.java:116)
        at org.eclipse.jdt.internal.junit.launcher.TestSelectionDialog.open
(TestSelectionDialog.java:83)
        at 
org.eclipse.jdt.internal.junit.launcher.JUnitMainTab.handleSearchButtonSelected
(JUnitMainTab.java:400)
        at 
org.eclipse.jdt.internal.junit.launcher.JUnitMainTab$5.widgetSelected
(JUnitMainTab.java:191)
        at org.eclipse.swt.widgets.TypedListener.handleEvent
(TypedListener.java:89)
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:847)
        at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2187)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1877)
        at org.eclipse.jface.window.Window.runEventLoop(Window.java:583)
        at org.eclipse.jface.window.Window.open(Window.java:563)
        at 
org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.o
pen(LaunchConfigurationsDialog.java:442)
        at org.eclipse.debug.ui.DebugUITools$1.run(DebugUITools.java:388)
        at org.eclipse.swt.custom.BusyIndicator.showWhile
(BusyIndicator.java:84)
        at 
org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup
(DebugUITools.java:392)
        at 
org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup
(DebugUITools.java:334)
        at org.eclipse.debug.ui.actions.OpenLaunchDialogAction.run
(OpenLaunchDialogAction.java:79)
        at org.eclipse.debug.ui.actions.OpenLaunchDialogAction.run
(OpenLaunchDialogAction.java:97)
        at org.eclipse.ui.internal.PluginAction.runWithEvent
(PluginAction.java:263)
        at org.eclipse.ui.internal.WWinPluginAction.runWithEvent
(WWinPluginAction.java:207)
        at 
org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection
(ActionContributionItem.java:529)
        at org.eclipse.jface.action.ActionContributionItem.access$4
(ActionContributionItem.java:482)
        at org.eclipse.jface.action.ActionContributionItem$6.handleEvent
(ActionContributionItem.java:454)
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:847)
        at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2187)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1877)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2037)
        at org.eclipse.ui.internal.Workbench.run(Workbench.java:2020)
        at org.eclipse.core.internal.boot.InternalBootLoader.run
(InternalBootLoader.java:858)
        at org.eclipse.core.boot.BootLoader.run(BootLoader.java:461)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke
(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke
(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:295)
        at org.eclipse.core.launcher.Main.run(Main.java:751)
        at org.eclipse.core.launcher.Main.main(Main.java:587)

"VM Thread" prio=5 tid=0x009ECB48 nid=0xf8 runnable

"VM Periodic Task Thread" prio=10 tid=0x009A7640 nid=0xbb8 waiting on condition
"Suspend Checker Thread" prio=10 tid=0x009A8238 nid=0x8bc runnable
Comment 1 Jonathan Gossage CLA 2003-10-09 09:06:03 EDT
After I had finished entering this bug report which took about 5 min. I 
switched back to Eclipse and found that it had finally presented the list of 
Junit suites.
Comment 2 Darin Wright CLA 2003-10-09 10:01:28 EDT
This launch config type/search facility is contributed by JDT-UI/JDT-CORE
Comment 3 Dirk Baeumer CLA 2003-10-09 10:15:23 EDT
The active thread ("ModalContext") is currently doing the search. Moving to 
JDT/Core for comments.
Comment 4 Philipe Mulet CLA 2003-10-09 12:44:49 EDT
Can you reproduce it ? If so, does it still occur if disabling the JSP support ?
Comment 5 Jonathan Gossage CLA 2003-10-09 13:10:31 EDT
How do I disable JSP support. I will try again once I know how to get rid of 
the JSP stuff which I do not need.
Comment 6 Philipe Mulet CLA 2003-10-09 13:14:42 EDT
simply move away plugins with jsp in their names
Comment 7 Jonathan Gossage CLA 2003-10-09 13:25:13 EDT
I can't find any plugins with JSP in their name. I have been looking in 
the .plugins directory of my Eclipse installation.
Comment 8 Philipe Mulet CLA 2003-10-09 15:46:19 EDT
Can you reproduce it with a plain install ? If so, could you provide exact 
steps ?
Comment 9 Jonathan Gossage CLA 2003-10-09 15:54:56 EDT
I will try this as soon as the M4 build is available, hopefully first thing in 
the Canadian morning.
Comment 10 Jerome Lanneluc CLA 2003-12-17 11:20:01 EST
Jonathan, any news on this problem? Or can it be closed?
Comment 11 Jonathan Gossage CLA 2003-12-17 17:02:57 EST
I can't make it happen again so go ahead and close it.
Comment 12 Jerome Lanneluc CLA 2003-12-17 17:27:08 EST
Thanks. Closing.