Bug 70035 - Hang during exit
Summary: Hang during exit
Status: RESOLVED INVALID
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Text (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows XP
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Dani Megert CLA
QA Contact:
URL:
Whiteboard:
Keywords: needinfo
Depends on:
Blocks:
 
Reported: 2004-07-14 12:25 EDT by Gary Gregory CLA
Modified: 2007-06-22 10:04 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gary Gregory CLA 2004-07-14 12:25:54 EDT
I closed eclipse and has been hung with no activity of several minutes. The disk
has been active at first. I had about 60 Java files open, a build.xml and some
.properties file. I had e running for a couple of days. Here is the Sun JVM
1.4.2_04 Ctrl-Break dump:
Full thread dump Java HotSpot(TM) Client VM (1.4.2_04-b05 mixed mode):

"Worker-233" prio=5 tid=0x03fa4140 nid=0x1144 in Object.wait() [744f000..744fd8c]
        at java.lang.Object.wait(Native Method)
        at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:166)
        - locked <0x115d1db8> (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=2 tid=0x04db6488
nid=0x1070 in Object.wait() [695f000..695
fd8c]
        at java.lang.Object.wait(Native Method)
        at
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:176)
        - locked <0x19154a10> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"org.eclipse.jdt.internal.ui.text.JavaReconciler" daemon prio=2 tid=0x0406ed68
nid=0xadc in Object.wait() [5b7f000..5b7f
d8c]
        at java.lang.Object.wait(Native Method)
        at
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:176)
        - locked <0x19104c98> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)

"Reference Cleaner - 2" prio=7 tid=0x02e0bd40 nid=0x14f0 in Object.wait()
[387f000..387fd8c]
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x12b23858> (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=7 tid=0x02e0ca58 nid=0x1488 in Object.wait()
[383f000..383fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x12b238c8> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x12b238c8> (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)

"Java indexing" daemon prio=5 tid=0x02da8bf0 nid=0x11fc in Object.wait()
[37bf000..37bfd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x12ab5fd8> (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 <0x12ab5fd8> (a
org.eclipse.jdt.internal.core.search.indexing.IndexManager)
        at java.lang.Thread.run(Thread.java:534)

"Start Level Event Dispatcher" daemon prio=5 tid=0x00975678 nid=0xc50 in
Object.wait() [2fbf000..2fbfd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1143e2c0> (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 <0x1143e2c0> (a org.eclipse.osgi.framework.eventmgr.EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run(EventThread.java:100)

"Framework Event Dispatcher" daemon prio=5 tid=0x02ec1ae0 nid=0x12d4 in
Object.wait() [2f7f000..2f7fd8c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1143e378> (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 <0x1143e378> (a org.eclipse.osgi.framework.eventmgr.EventThread)
        at org.eclipse.osgi.framework.eventmgr.EventThread.run(EventThread.java:100)

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

"Finalizer" daemon prio=9 tid=0x008a7280 nid=0x1178 in Object.wait()
[2c3f000..2c3fd8c]
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:111)
        - locked <0x113caae0> (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=0x008a5e50 nid=0x1764 in Object.wait()
[2bff000..2bffd8c]
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Object.java:429)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:115)
        - locked <0x113cab48> (a java.lang.ref.Reference$Lock)

"main" prio=5 tid=0x00035f78 nid=0x10b0 in Object.wait() [7d000..7fc3c]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x189e0a48> (a
org.eclipse.jface.text.reconciler.DirtyRegionQueue)
        at java.lang.Object.wait(Object.java:429)
        at
org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.suspendCallerWhileDirty(AbstractReconci
ler.java:119)
        - locked <0x189e0a48> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)
        at
org.eclipse.jface.text.reconciler.AbstractReconciler$Listener.inputDocumentAboutToBeChanged(AbstractReconcile
r.java:266)
        at
org.eclipse.jface.text.TextViewer.fireInputDocumentAboutToBeChanged(TextViewer.java:2300)
        at org.eclipse.jface.text.TextViewer.setDocument(TextViewer.java:2355)
        at
org.eclipse.jface.text.source.SourceViewer.setDocument(SourceViewer.java:460)
        at
org.eclipse.jface.text.source.SourceViewer.setDocument(SourceViewer.java:406)
        at org.eclipse.jface.text.TextViewer$1.widgetDisposed(TextViewer.java:1372)
        at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:100)
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:796)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:820)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:805)
        at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:613)
        at org.eclipse.swt.custom.StyledText.handleDispose(StyledText.java:4875)
        at org.eclipse.swt.custom.StyledText$7.handleEvent(StyledText.java:4746)
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:796)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:820)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:801)
        at org.eclipse.swt.widgets.Widget.releaseWidget(Widget.java:708)
        at org.eclipse.swt.widgets.Control.releaseWidget(Control.java:1480)
        at org.eclipse.swt.widgets.Scrollable.releaseWidget(Scrollable.java:192)
        at org.eclipse.swt.widgets.Composite.releaseWidget(Composite.java:373)
        at org.eclipse.swt.widgets.Canvas.releaseWidget(Canvas.java:118)
        at org.eclipse.swt.widgets.Widget.releaseResources(Widget.java:673)
        at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:367)
        at org.eclipse.swt.widgets.Composite.releaseWidget(Composite.java:372)
        at org.eclipse.swt.widgets.Canvas.releaseWidget(Canvas.java:118)
        at org.eclipse.swt.widgets.Widget.releaseResources(Widget.java:673)
        at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:367)
        at org.eclipse.swt.widgets.Composite.releaseWidget(Composite.java:372)
        at org.eclipse.swt.widgets.Widget.releaseResources(Widget.java:673)
        at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:367)
        at org.eclipse.swt.widgets.Composite.releaseWidget(Composite.java:372)
        at org.eclipse.swt.widgets.Widget.releaseResources(Widget.java:673)
        at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:367)
        at org.eclipse.swt.widgets.Composite.releaseWidget(Composite.java:372)
        at org.eclipse.swt.widgets.Widget.releaseResources(Widget.java:673)
        at org.eclipse.swt.widgets.Composite.releaseChildren(Composite.java:367)
        at org.eclipse.swt.widgets.Composite.releaseWidget(Composite.java:372)
        at org.eclipse.swt.widgets.Widget.dispose(Widget.java:368)
        at org.eclipse.ui.internal.PartPane.dispose(PartPane.java:227)
        at
org.eclipse.ui.internal.EditorAreaHelper.closeEditor(EditorAreaHelper.java:113)
        at
org.eclipse.ui.internal.EditorAreaHelper.closeEditor(EditorAreaHelper.java:101)
        at org.eclipse.ui.internal.EditorManager.closeEditor(EditorManager.java:202)
        at
org.eclipse.ui.internal.WorkbenchPage.closeEditors(WorkbenchPage.java:934)
        at
org.eclipse.ui.internal.WorkbenchPage.closeAllEditors(WorkbenchPage.java:874)
        at org.eclipse.ui.internal.WorkbenchPage.dispose(WorkbenchPage.java:1220)
        at
org.eclipse.ui.internal.WorkbenchWindow.closeAllPages(WorkbenchWindow.java:572)
        at
org.eclipse.ui.internal.WorkbenchWindow.hardClose(WorkbenchWindow.java:1007)
        at
org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:467)
        at
org.eclipse.ui.internal.WorkbenchWindow.access$0(WorkbenchWindow.java:448)
        at org.eclipse.ui.internal.WorkbenchWindow$1.run(WorkbenchWindow.java:539)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
        at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:537)
        at org.eclipse.jface.window.WindowManager.close(WindowManager.java:101)
        at org.eclipse.ui.internal.Workbench$10.run(Workbench.java:461)
        at
org.eclipse.core.internal.runtime.InternalPlatform.run(InternalPlatform.java:615)
        at org.eclipse.core.runtime.Platform.run(Platform.java:747)
        at org.eclipse.ui.internal.Workbench.busyClose(Workbench.java:458)
        at org.eclipse.ui.internal.Workbench.access$8(Workbench.java:400)
        at org.eclipse.ui.internal.Workbench$12.run(Workbench.java:572)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
        at org.eclipse.ui.internal.Workbench.close(Workbench.java:570)
        at org.eclipse.ui.internal.Workbench.close(Workbench.java:546)
        at
org.eclipse.ui.internal.WorkbenchWindow.busyClose(WorkbenchWindow.java:464)
        at
org.eclipse.ui.internal.WorkbenchWindow.access$0(WorkbenchWindow.java:448)
        at org.eclipse.ui.internal.WorkbenchWindow$1.run(WorkbenchWindow.java:539)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
        at org.eclipse.ui.internal.WorkbenchWindow.close(WorkbenchWindow.java:537)
        at org.eclipse.jface.window.Window.handleShellCloseEvent(Window.java:593)
        at org.eclipse.jface.window.Window$2.shellClosed(Window.java:544)
        at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:158)
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:82)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:796)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:820)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:805)
        at org.eclipse.swt.widgets.Decorations.WM_CLOSE(Decorations.java:1448)
        at org.eclipse.swt.widgets.Control.windowProc(Control.java:2972)
        at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1391)
        at org.eclipse.swt.widgets.Display.windowProc(Display.java:3338)
        at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
        at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1462)
        at org.eclipse.swt.widgets.Shell.callWindowProc(Shell.java:398)
        at org.eclipse.swt.widgets.Control.windowProc(Control.java:3050)
        at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1391)
        at org.eclipse.swt.widgets.Display.windowProc(Display.java:3338)
        at org.eclipse.swt.internal.win32.OS.DefWindowProcW(Native Method)
        at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:1462)
        at org.eclipse.swt.widgets.Shell.callWindowProc(Shell.java:398)
        at org.eclipse.swt.widgets.Control.windowProc(Control.java:3050)
        at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1391)
        at org.eclipse.swt.widgets.Display.windowProc(Display.java:3338)
        at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
        at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1467)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2429)
        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=5 tid=0x009416c8 nid=0x11e4 runnable

"VM Periodic Task Thread" prio=10 tid=0x00942f90 nid=0x131c waiting on condition
"Suspend Checker Thread" prio=10 tid=0x008a9760 nid=0x1664 runnable
Comment 1 John Arthorne CLA 2004-07-14 13:58:28 EDT
Did this occur with the 3.0 final release?

Looks the same as bug 61477. I didn't want to close as a duplicate in case it is
a different version of a similar problem.
Comment 2 Gary Gregory CLA 2004-07-14 14:12:18 EDT
>Did this occur with the 3.0 final release?

Yes, the final release.

>Looks the same as bug 61477. I didn't want to close as a duplicate in case it is
a different version of a similar problem.

I had forgotten about that one. I do not know if it is the same issue. I did not
compare the 2 JVM dumps.
Comment 3 Dani Megert CLA 2004-07-29 06:21:33 EDT
I cannot reproduce this using R3.0.
To me it looks as if the reconciler thread for which main is waiting has died.

Can you reproduce?
Was there something in .log?
Comment 4 Dani Megert CLA 2007-06-22 09:58:55 EDT
Get rid of deprecated state.
Comment 5 Dani Megert CLA 2007-06-22 10:04:17 EDT
.