Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 75161 - eclipse debugger hangs on Mdk 10.1 CE
Summary: eclipse debugger hangs on Mdk 10.1 CE
Status: RESOLVED DUPLICATE of bug 44915
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 3.0   Edit
Hardware: PC Linux-GTK
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform-SWT-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-09-28 09:01 EDT by Edoardo Comar CLA
Modified: 2004-09-30 13:08 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Edoardo Comar CLA 2004-09-28 09:01:49 EDT
With either
eclipse 3.0.0 and 3.0.1 (linux gtk)
and Sun JDK 1.4.2_04 and 1.4.2._05
on a stock Mandrake 10.1 (kernel 2.6.8.1-10mdk)

debugging an eclipse runtime workbench very often results in both debugged and
debuggee processes hanging.

This happens after a breakpoint is hit, either on F6 stepping or on double
clicking on the class stack in the debug view to open a source editor on another
point along the stack.

FYI, gtk+ libraries versions I have installed:
libgtk+-x11-2.0_0:libgtk+-x11-2.0_0-2.4.9-4mdk.i586.rpm
libgtk+2.0_0:libgtk+2.0_0-2.4.9-4mdk.i586.rpm
gtk+2.0:gtk+2.0-2.4.9-4mdk.i586.rpm
libgtk+1.2:libgtk+1.2-1.2.10-40mdk.i586.rpm
libgtk+2.0_0-devel:libgtk+2.0_0-devel-2.4.9-4mdk.i586.rpm
libgtk+1.2-devel:libgtk+1.2-devel-1.2.10-40mdk.i586.rpm
gtk+licq-base:gtk+licq-base-0.51-12mdk.i586.rpm
gtk+licq:gtk+licq-0.51-12mdk.i586.rpm
gtk+licq-nognome:gtk+licq-nognome-0.51-12mdk.i586.rpm
libgtk+extra0:libgtk+extra0-0.99.17-4mdk.i586.rpm
libgtk+extra0-devel:libgtk+extra0-devel-0.99.17-4mdk.i586.rpm
Comment 1 Edoardo Comar CLA 2004-09-28 09:26:32 EDT
tried also using build I20040907 of the 3.1 stream running on jdk 150rc
against a 300 workbench using jdk142_05 : still hangs.

this is the host eclipse stack trace (I am unable to do that on the runtime
workbench as that is captured by the host which is hung)

Full thread dump Java HotSpot(TM) Client VM (1.5.0-rc-b63 mixed mode, sharing):

"org.eclipse.jdt.debug: JDI Event Dispatcher" prio=1 tid=0x08962e18 nid=0x1eff
in Object.wait() [0x486d9000..0x486d9710]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x54c1b578> (a
org.eclipse.jdi.internal.connect.PacketReceiveManager)
        at java.lang.Object.wait(Object.java:474)
        at
org.eclipse.jdi.internal.connect.PacketReceiveManager.waitForPacketAvailable(PacketReceiveManager.java:168)
        at
org.eclipse.jdi.internal.connect.PacketReceiveManager.getCommand(PacketReceiveManager.java:93)
        - locked <0x54c1b578> (a
org.eclipse.jdi.internal.connect.PacketReceiveManager)
        at org.eclipse.jdi.internal.MirrorImpl.getCommandVM(MirrorImpl.java:276)
        at
org.eclipse.jdi.internal.event.EventQueueImpl.remove(EventQueueImpl.java:63)
        at
org.eclipse.jdi.internal.event.EventQueueImpl.remove(EventQueueImpl.java:48)
        at
org.eclipse.jdt.internal.debug.core.EventDispatcher.run(EventDispatcher.java:213)
        at java.lang.Thread.run(Thread.java:595)

"Packet Send Manager" prio=1 tid=0x087e8f60 nid=0x1efe in Object.wait()
[0x487db000..0x487db590]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x54c1b600> (a
org.eclipse.jdi.internal.connect.PacketSendManager)
        at java.lang.Object.wait(Object.java:474)
        at
org.eclipse.jdi.internal.connect.PacketSendManager.sendAvailablePackets(PacketSendManager.java:94)
        - locked <0x54c1b600> (a org.eclipse.jdi.internal.connect.PacketSendManager)
        at
org.eclipse.jdi.internal.connect.PacketSendManager.run(PacketSendManager.java:54)
        at java.lang.Thread.run(Thread.java:595)

"Packet Receive Manager" prio=1 tid=0x087d4420 nid=0x1efd runnable
[0x4875a000..0x4875a610]
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at java.net.SocketInputStream.read(SocketInputStream.java:182)
        at java.io.DataInputStream.readInt(DataInputStream.java:353)
        at org.eclipse.jdi.internal.jdwp.JdwpPacket.read(JdwpPacket.java:125)
        at
org.eclipse.jdi.internal.connect.PacketReceiveManager.readAvailablePacket(PacketReceiveManager.java:224)
        at
org.eclipse.jdi.internal.connect.PacketReceiveManager.run(PacketReceiveManager.java:70)
        at java.lang.Thread.run(Thread.java:595)

"Input Stream Monitor" prio=1 tid=0x087c0998 nid=0x1ef3 in Object.wait()
[0x48556000..0x48556810]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x54c0af18> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:474)
        at
org.eclipse.debug.internal.core.InputStreamMonitor.writeNext(InputStreamMonitor.java:124)
        - locked <0x54c0af18> (a java.lang.Object)
        at
org.eclipse.debug.internal.core.InputStreamMonitor.write(InputStreamMonitor.java:99)
        at
org.eclipse.debug.internal.core.InputStreamMonitor$1.run(InputStreamMonitor.java:75)
        at java.lang.Thread.run(Thread.java:595)

"Output Stream Monitor" prio=1 tid=0x083224c0 nid=0x1ef2 runnable
[0x48058000..0x48058690]
        at java.io.FileInputStream.readBytes(Native Method)
        at java.io.FileInputStream.read(FileInputStream.java:177)
        at
org.eclipse.debug.internal.core.OutputStreamMonitor.read(OutputStreamMonitor.java:132)
        at
org.eclipse.debug.internal.core.OutputStreamMonitor.access$1(OutputStreamMonitor.java:124)
        at
org.eclipse.debug.internal.core.OutputStreamMonitor$1.run(OutputStreamMonitor.java:177)
        at java.lang.Thread.run(Thread.java:595)

"Output Stream Monitor" prio=1 tid=0x08974fd8 nid=0x1ef1 runnable
[0x47fd7000..0x47fd7710]
        at java.io.FileInputStream.readBytes(Native Method)
        at java.io.FileInputStream.read(FileInputStream.java:194)
        at java.io.BufferedInputStream.read1(BufferedInputStream.java:254)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:313)
        - locked <0x54c08260> (a java.io.BufferedInputStream)
        at java.io.FilterInputStream.read(FilterInputStream.java:90)
        at
org.eclipse.debug.internal.core.OutputStreamMonitor.read(OutputStreamMonitor.java:132)
        at
org.eclipse.debug.internal.core.OutputStreamMonitor.access$1(OutputStreamMonitor.java:124)
        at
org.eclipse.debug.internal.core.OutputStreamMonitor$1.run(OutputStreamMonitor.java:177)
        at java.lang.Thread.run(Thread.java:595)

"process reaper" daemon prio=1 tid=0x08958b28 nid=0x1eef runnable
[0x47d52000..0x47d52590]
        at java.lang.UNIXProcess.waitForProcessExit(Native Method)
        at java.lang.UNIXProcess.access$900(UNIXProcess.java:20)
        at java.lang.UNIXProcess$1$1.run(UNIXProcess.java:132)

"Worker-5" prio=1 tid=0x08668d20 nid=0x1eee in Object.wait()
[0x45fe7000..0x45fe7610]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x54c05a88> (a java.lang.UNIXProcess)
        at java.lang.Object.wait(Object.java:474)
        at java.lang.UNIXProcess.waitFor(UNIXProcess.java:165)
        - locked <0x54c05a88> (a java.lang.UNIXProcess)
        at
org.eclipse.debug.core.model.RuntimeProcess$ProcessMonitorJob.run(RuntimeProcess.java:362)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)

"Worker-4" prio=1 tid=0x08a77688 nid=0x1eeb in Object.wait()
[0x4892b000..0x4892b490]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x536f4508> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:166)
        - locked <0x536f4508> (a org.eclipse.core.internal.jobs.WorkerPool)
        at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:193)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:59)

"Worker-3" prio=1 tid=0x0822d7e8 nid=0x1ee8 in Object.wait()
[0x49af5000..0x49af5810]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x54c0f910> (a [B)
        at java.lang.Object.wait(Object.java:474)
        at
org.eclipse.ui.console.IOConsoleInputStream.waitForData(IOConsoleInputStream.java:148)
        at
org.eclipse.ui.console.IOConsoleInputStream.read(IOConsoleInputStream.java:93)
        - locked <0x54c0f910> (a [B)
        at
org.eclipse.ui.console.IOConsoleInputStream.read(IOConsoleInputStream.java:119)
        at
org.eclipse.debug.internal.ui.views.console.ProcessConsole$InputReadJob.run(ProcessConsole.java:420)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:66)

"Java indexing" daemon prio=1 tid=0x08223200 nid=0x1ee4 in Object.wait()
[0x47443000..0x47443610]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x5394bfb0> (a
org.eclipse.jdt.internal.core.search.indexing.IndexManager)
        at java.lang.Object.wait(Object.java:474)
        at
org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:345)
        - locked <0x5394bfb0> (a
org.eclipse.jdt.internal.core.search.indexing.IndexManager)
        at java.lang.Thread.run(Thread.java:595)

"Reference Cleaner - 2" prio=1 tid=0x085af1f0 nid=0x1edf in Object.wait()
[0x470f9000..0x470f9790]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x539a0bb8> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0x539a0bb8> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
        at
org.eclipse.jface.action.ActionContributionItem$ImageCache$ReferenceCleanerThread.run(ActionContributionItem.java:216)

"Reference Cleaner - 1" prio=1 tid=0x0856e930 nid=0x1ede in Object.wait()
[0x47078000..0x47078810]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x539a0c40> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0x539a0c40> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
        at
org.eclipse.jface.action.ActionContributionItem$ImageCache$ReferenceCleanerThread.run(ActionContributionItem.java:216)

"Start Level Event Dispatcher" daemon prio=1 tid=0x0819e400 nid=0x1edd in
Object.wait() [0x46180000..0x46180690]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x536c0220> (a
org.eclipse.osgi.framework.eventmgr.EventThread)
        at java.lang.Object.wait(Object.java:474)
        at
org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent(EventThread.java:162)
        - locked <0x536c0220> (a org.eclipse.osgi.framework.eventmgr.EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run(EventThread.java:100)

"Framework Event Dispatcher" daemon prio=1 tid=0x081ab9b8 nid=0x1edc in
Object.wait() [0x460ff000..0x460ff710]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x536c0288> (a
org.eclipse.osgi.framework.eventmgr.EventThread)
        at java.lang.Object.wait(Object.java:474)
        at
org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent(EventThread.java:162)
        - locked <0x536c0288> (a org.eclipse.osgi.framework.eventmgr.EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run(EventThread.java:100)

"Low Memory Detector" daemon prio=1 tid=0x080a1920 nid=0x1ed8 runnable
[0x00000000..0x00000000]

"CompilerThread0" daemon prio=1 tid=0x080a03d0 nid=0x1ed7 waiting on condition
[0x00000000..0x45d47ef8]

"Signal Dispatcher" daemon prio=1 tid=0x0809f450 nid=0x1ed6 runnable
[0x00000000..0x00000000]

"Finalizer" daemon prio=1 tid=0x08099f68 nid=0x1ed5 in Object.wait()
[0x45c1a000..0x45c1a810]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x536c0470> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0x536c0470> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=1 tid=0x08099278 nid=0x1ed4 in Object.wait()
[0x45b99000..0x45b99690]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x536c04f0> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Object.java:474)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
        - locked <0x536c04f0> (a java.lang.ref.Reference$Lock)

"main" prio=1 tid=0x0805bf98 nid=0x1ed2 runnable [0xbfffb000..0xbfffce28]
        at
org.eclipse.swt.internal.gtk.OS.gtk_clipboard_wait_for_contents(Native Method)
        - locked <0x69bb39f8> (a java.lang.Class)
        at
org.eclipse.swt.dnd.Clipboard.gtk_clipboard_wait_for_contents(Clipboard.java:386)
        at org.eclipse.swt.dnd.Clipboard._getAvailableTypes(Clipboard.java:351)
        at org.eclipse.swt.dnd.Clipboard.getAvailableTypes(Clipboard.java:300)
        at
org.eclipse.jdt.internal.ui.refactoring.reorg.PasteAction.canOperateOn(PasteAction.java:129)
        at
org.eclipse.jdt.internal.ui.refactoring.reorg.PasteAction.selectionChanged(PasteAction.java:118)
        at
org.eclipse.jdt.ui.actions.SelectionDispatchAction.dispatchSelectionChanged(SelectionDispatchAction.java:200)
        at
org.eclipse.jdt.ui.actions.SelectionDispatchAction.selectionChanged(SelectionDispatchAction.java:195)
        at org.eclipse.jface.viewers.Viewer$2.run(Viewer.java:163)
        at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:615)
        at org.eclipse.core.runtime.Platform.run(Platform.java:747)
        at org.eclipse.jface.viewers.Viewer.fireSelectionChanged(Viewer.java:161)
        at
org.eclipse.jface.viewers.StructuredViewer.updateSelection(StructuredViewer.java:1453)
        at
org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1142)
        at
org.eclipse.jdt.internal.ui.javaeditor.JavaOutlinePage.select(JavaOutlinePage.java:1193)
        at
org.eclipse.jdt.internal.ui.javaeditor.JavaEditor.adjustHighlightRange(JavaEditor.java:2778)
        at
org.eclipse.ui.texteditor.AbstractTextEditor.selectAndReveal(AbstractTextEditor.java:4565)
        at
org.eclipse.ui.texteditor.AbstractTextEditor.selectAndReveal(AbstractTextEditor.java:4539)
        at
org.eclipse.debug.internal.ui.views.launch.LaunchView.positionEditor(LaunchView.java:737)
        at
org.eclipse.debug.internal.ui.views.launch.LaunchView.openEditorForStackFrame(LaunchView.java:714)
        at
org.eclipse.debug.internal.ui.views.launch.LaunchView.showEditorForCurrentSelection(LaunchView.java:600)
        at
org.eclipse.debug.internal.ui.views.launch.LaunchView.selectionChanged(LaunchView.java:474)
        at
org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:470)
        at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:615)
        at org.eclipse.core.runtime.Platform.run(Platform.java:747)
        at
org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:468)
        at
org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1143)
        at
org.eclipse.debug.internal.ui.views.launch.LaunchView.autoExpand(LaunchView.java:965)
        at
org.eclipse.debug.internal.ui.views.launch.LaunchViewEventHandler.doHandleSuspendThreadEvent(LaunchViewEventHandler.java:225)
        at
org.eclipse.debug.internal.ui.views.launch.LaunchViewEventHandler.doHandleSuspendEvent(LaunchViewEventHandler.java:185)
        at
org.eclipse.debug.internal.ui.views.launch.LaunchViewEventHandler.doHandleDebugEvents(LaunchViewEventHandler.java:100)
        at
org.eclipse.debug.internal.ui.views.AbstractDebugEventHandler$1.run(AbstractDebugEventHandler.java:70)
        at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
        at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:106)
        - locked <0x5190e260> (a org.eclipse.swt.widgets.RunnableLock)
        at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:2620)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2349)
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1435)
        at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1406)
        at
org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:263)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:144)
        at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:102)
        at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:335)
        at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:273)
        at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:129)
        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:585)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:183)
        at org.eclipse.core.launcher.Main.run(Main.java:644)
        at org.eclipse.core.launcher.Main.main(Main.java:628)

"VM Thread" prio=1 tid=0x080967a0 nid=0x1ed3 runnable

"VM Periodic Task Thread" prio=1 tid=0x080a2db0 nid=0x1ed9 waiting on condition

Quit
[edoardo@edovaiomdk 3.1]$
Comment 2 Edoardo Comar CLA 2004-09-28 09:29:43 EDT
!!!! sendning SIGQUIT to the host, actually unblocked the 2 eclipses.
here is the stack dump for the debugged:

Full thread dump Java HotSpot(TM) Client VM (1.4.2_05-b04 mixed mode):


"Worker-5" prio=1 tid=0x081f3758 nid=0x1ef0 in Object.wait() [4ce84000..4ce8488c]

	at java.lang.Object.wait(Native Method)

	- waiting on <0x45089f18> (a org.eclipse.core.internal.jobs.WorkerPool)

	at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:166)

	- locked <0x45089f18> (a org.eclipse.core.internal.jobs.WorkerPool)

	at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:193)

	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:59)



"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=1 tid=0x08745520
nid=0x1ef0 in Object.wait() [4ef19000..4ef1988c]

	at java.lang.Object.wait(Native Method)

	- waiting on <0x4545ae18> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)

	at
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:176)

	- locked <0x4545ae18> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)



"Java indexing" daemon prio=1 tid=0x0859f810 nid=0x1ef0 in Object.wait()
[4e952000..4e95288c]

	at java.lang.Object.wait(Native Method)

	- waiting on <0x45175ea0> (a
org.eclipse.jdt.internal.core.search.indexing.IndexManager)

	at java.lang.Object.wait(Object.java:429)

	at
org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:338)

	- locked <0x45175ea0> (a
org.eclipse.jdt.internal.core.search.indexing.IndexManager)

	at java.lang.Thread.run(Thread.java:534)



"Reference Cleaner - 2" prio=1 tid=0x08242fc8 nid=0x1ef0 in Object.wait()
[4df76000..4df7688c]

	at java.lang.Object.wait(Native Method)

	- waiting on <0x451060b0> (a java.lang.ref.ReferenceQueue$Lock)

	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)

	- locked <0x451060b0> (a java.lang.ref.ReferenceQueue$Lock)

	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)

	at
org.eclipse.jface.action.ActionContributionItem$ImageCache$ReferenceCleanerThread.run(ActionContributionItem.java:207)



"Reference Cleaner - 1" prio=1 tid=0x08242bd8 nid=0x1ef0 in Object.wait()
[4d0b2000..4d0b288c]

	at java.lang.Object.wait(Native Method)

	- waiting on <0x451060d0> (a java.lang.ref.ReferenceQueue$Lock)

	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)

	- locked <0x451060d0> (a java.lang.ref.ReferenceQueue$Lock)

	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127)

	at
org.eclipse.jface.action.ActionContributionItem$ImageCache$ReferenceCleanerThread.run(ActionContributionItem.java:207)



"Start Level Event Dispatcher" daemon prio=1 tid=0x08157450 nid=0x1ef0 in
Object.wait() [4d031000..4d03188c]

	at java.lang.Object.wait(Native Method)

	- waiting on <0x44c39bd0> (a org.eclipse.osgi.framework.eventmgr.EventThread)

	at java.lang.Object.wait(Object.java:429)

	at
org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent(EventThread.java:162)

	- locked <0x44c39bd0> (a org.eclipse.osgi.framework.eventmgr.EventThread)

	at org.eclipse.osgi.framework.eventmgr.EventThread.run(EventThread.java:100)



"Framework Event Dispatcher" daemon prio=1 tid=0x0815f3d0 nid=0x1ef0 in
Object.wait() [4cf9c000..4cf9c88c]

	at java.lang.Object.wait(Native Method)

	- waiting on <0x44c39b80> (a org.eclipse.osgi.framework.eventmgr.EventThread)

	at java.lang.Object.wait(Object.java:429)

	at
org.eclipse.osgi.framework.eventmgr.EventThread.getNextEvent(EventThread.java:162)

	- locked <0x44c39b80> (a org.eclipse.osgi.framework.eventmgr.EventThread)

	at org.eclipse.osgi.framework.eventmgr.EventThread.run(EventThread.java:100)



"Signal Dispatcher" daemon prio=1 tid=0x0809b950 nid=0x1ef0 runnable [0..0]



"JDWP Command Reader" daemon prio=1 tid=0x0809a7f0 nid=0x1ef0 runnable [0..0]



"JDWP Event Helper Thread" daemon prio=1 tid=0x08099950 nid=0x1ef0 runnable [0..0]



"JDWP Transport Listener: dt_socket" daemon prio=1 tid=0x08098ce0 nid=0x1ef0
runnable [0..4ca135f0]



"Finalizer" daemon prio=1 tid=0x08092c50 nid=0x1ef0 in Object.wait()
[4c932000..4c93288c]

	at java.lang.Object.wait(Native Method)

	- waiting on <0x44c1bed8> (a java.lang.ref.ReferenceQueue$Lock)

	at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)

	- locked <0x44c1bed8> (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=1 tid=0x08092028 nid=0x1ef0 in Object.wait()
[4c8b1000..4c8b188c]

	at java.lang.Object.wait(Native Method)

	- waiting on <0x44c1bef8> (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 <0x44c1bef8> (a java.lang.ref.Reference$Lock)



"main" prio=1 tid=0x0805c2b8 nid=0x1ef0 runnable [bfffc000..bfffcca8]

	at
org.eclipse.jface.text.source.projection.ProjectionViewer.copyToClipboard(ProjectionViewer.java:1463)

	at
org.eclipse.jface.text.source.projection.ProjectionViewer.doOperation(ProjectionViewer.java:1353)

	at
org.eclipse.jdt.internal.ui.javaeditor.JavaSourceViewer.doOperation(JavaSourceViewer.java:152)

	at
org.eclipse.jdt.internal.ui.javaeditor.CompilationUnitEditor$AdaptedSourceViewer.doOperation(CompilationUnitEditor.java:199)

	at
org.eclipse.jdt.internal.ui.javaeditor.ClipboardOperationAction.doCutCopyWithImportsOperation(ClipboardOperationAction.java:304)

	at
org.eclipse.jdt.internal.ui.javaeditor.ClipboardOperationAction.internalDoOperation(ClipboardOperationAction.java:256)

	at
org.eclipse.jdt.internal.ui.javaeditor.ClipboardOperationAction$1.run(ClipboardOperationAction.java:225)

	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)

	at
org.eclipse.jdt.internal.ui.javaeditor.ClipboardOperationAction.run(ClipboardOperationAction.java:223)

	at org.eclipse.jface.action.Action.runWithEvent(Action.java:881)

	at
org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:915)

	at
org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:866)

	at
org.eclipse.jface.action.ActionContributionItem$7.handleEvent(ActionContributionItem.java:785)

	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)

	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:954)

	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:2595)

	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2298)

	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1377)

	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1348)

	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:254)

	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:141)

	at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:96)

	at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:335)

	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:273)

	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:129)

	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:183)

	at org.eclipse.core.launcher.Main.run(Main.java:644)

	at org.eclipse.core.launcher.Main.main(Main.java:628)



"VM Thread" prio=1 tid=0x08090dc8 nid=0x1ef0 runnable 



"VM Periodic Task Thread" prio=1 tid=0x0809ef50 nid=0x1ef0 waiting on condition 

"Suspend Checker Thread" prio=1 tid=0x0809b710 nid=0x1ef0 runnable 

Comment 3 Darin Wright CLA 2004-09-28 10:59:29 EDT
Moving to SWT for comment. The main thread is in "wait for clipboard contents".
Comment 4 Edoardo Comar CLA 2004-09-28 13:21:21 EDT
I must add that I was debugging the execution of the 'CUT' action.
That's why the clipboard showed up in the thread dump I guess
Comment 5 Edoardo Comar CLA 2004-09-30 08:11:38 EDT
I installed another distro (Yoper 2.1) which also comes with a 2.8.1 kernel and
some 2.4.x GTK+
and the debugger hangs exactly like in mandrake

this bug is starting to impact in my time-down-the drain :(
Comment 6 Billy Biggs CLA 2004-09-30 08:26:15 EDT
In X, the clipboard is distributed: when you hit paste (or ask if there is
anything to paste), the application must send a message to the application that
currently holds the clipboard and wait until it responds to get the result.

If you cut/copy some text in a process you are debugging, then Eclipse will hang
if it ever has to ask for the clipboard contents.  See bug 44915 comment #43.

Is this what is happening for you?
Comment 7 Edoardo Comar CLA 2004-09-30 08:41:56 EDT
I was debugging the execution of the CUT action in the Java editor
(which eventually led me to open bug 75222).

I can't see why the debugger would ever ask for the clipboard content while
stepping. anyway the hanging happens specifically here:

[code]
package org.eclipse.jface.text.source.projection;
class ProjectionViewer ...{
...
public void doOperation(int operation) {
...
case CUT:
... 
copyToClipboard(selection.x, selection.y, true, textWidget);
...
}
[/code]

when stepping inside copyToClipboard(..)
you'll encounter a line:
[code]
if (delete)
  deleteTextRange(offset, length, textWidget);
[/code]

pressing f5 to step *into* deleteTextRange

the debugger hangs.
I have just tried this again using 31M2 running on jdk15rc as debugger
and the target platform for plugin development is 301 running on jdk142_05

Comment 8 Grant Gayed CLA 2004-09-30 13:08:15 EDT

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