Community
Participate
Working Groups
The following incident was reported via the automated error reporting: code: 0 plugin: org.eclipse.ui.monitoring_1.0.0.v20141021-2031 message: UI freeze of 57s at 13:15:08.969 fingerprint: de6aa106 exception class: org.eclipse.recommenders.internal.stacktraces.rcp.StandInStacktraceProvider$StandInException exception message: Stand-In Stacktrace supplied by Eclipse Stacktraces & Error Reporting Tool number of children: 1 org.eclipse.recommenders.internal.stacktraces.rcp.StandInStacktraceProvider$StandInException: Stand-In Stacktrace supplied by Eclipse Stacktraces & Error Reporting Tool at org.eclipse.ui.internal.monitoring.DefaultUiFreezeEventLogger.log(DefaultUiFreezeEventLogger.java:94) at org.eclipse.ui.internal.monitoring.EventLoopMonitorThread.logEvent(EventLoopMonitorThread.java:743) at org.eclipse.ui.internal.monitoring.EventLoopMonitorThread.run(EventLoopMonitorThread.java:607) --- code: 0 plugin: org.eclipse.ui.monitoring_1.0.0.v20141021-2031 message: Sample at 13:16:07.042 (+58.073s) Thread 'main' tid=1 (RUNNABLE) fingerprint: 22f918cf exception class: java.lang.Exception exception message: Stack Trace number of children: 2 java.lang.Exception: Stack Trace at org.eclipse.swt.internal.win32.OS.PeekMessageW(OS.java:-2) at org.eclipse.swt.internal.win32.OS.PeekMessage(OS.java:3141) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3756) at org.eclipse.jface.window.Window.runEventLoop(Window.java:827) at org.eclipse.jface.window.Window.open(Window.java:803) at org.eclipse.jface.dialogs.MessageDialog.open(MessageDialog.java:330) at org.eclipse.jface.dialogs.MessageDialogWithToggle.open(MessageDialogWithToggle.java:114) at org.eclipse.jface.dialogs.MessageDialogWithToggle.openOkCancelConfirm(MessageDialogWithToggle.java:209) at org.eclipse.ui.internal.ide.application.IDEWorkbenchWindowAdvisor.promptOnExit(IDEWorkbenchWindowAdvisor.java:211) at org.eclipse.ui.internal.ide.application.IDEWorkbenchAdvisor$1.handleEvent(IDEWorkbenchAdvisor.java:166) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4353) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4346) at org.eclipse.swt.widgets.Display.messageProc(Display.java:3305) at org.eclipse.swt.internal.win32.OS.DefWindowProcW(OS.java:-2) at org.eclipse.swt.internal.win32.OS.DefWindowProc(OS.java:2544) at org.eclipse.swt.widgets.Shell.callWindowProc(Shell.java:498) at org.eclipse.swt.widgets.Control.windowProc(Control.java:4725) at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:339) at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1626) at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2083) at org.eclipse.swt.widgets.Display.windowProc(Display.java:5050) at org.eclipse.swt.internal.win32.OS.PeekMessageW(OS.java:-2) at org.eclipse.swt.internal.win32.OS.PeekMessage(OS.java:3141) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3756) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:638) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:582) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235) at sun.reflect.NativeMethodAccessorImpl.invoke0(null:-2) at sun.reflect.NativeMethodAccessorImpl.invoke(null:-1) at sun.reflect.DelegatingMethodAccessorImpl.invoke(null:-1) at java.lang.reflect.Method.invoke(null:-1) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603) at org.eclipse.equinox.launcher.Main.run(Main.java:1465) --- code: 0 plugin: org.eclipse.ui.monitoring_1.0.0.v20141021-2031 message: Thread 'org.eclipse.jdt.internal.ui.text.JavaReconciler' tid=31 (TIMED_WAITING) Waiting for: org.eclipse.jface.text.reconciler.DirtyRegionQueue@01a5cfd3 fingerprint: aef3c7d6 exception class: java.lang.Exception exception message: Stack Trace number of children: 0 java.lang.Exception: Stack Trace at java.lang.Object.wait(null:-2) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:179) --- code: 0 plugin: org.eclipse.ui.monitoring_1.0.0.v20141021-2031 message: Thread 'Active Thread: Equinox Container: 80a193fa-0497-0014-1330-e5758bd6e664' tid=9 (TIMED_WAITING) Waiting for: java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@0184fc66 fingerprint: 86f6769f exception class: java.lang.Exception exception message: Stack Trace number of children: 0 java.lang.Exception: Stack Trace at sun.misc.Unsafe.park(null:-2) at java.util.concurrent.locks.LockSupport.parkNanos(null:-1) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(null:-1) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(null:-1) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(null:-1) at java.util.concurrent.ThreadPoolExecutor.getTask(null:-1) at java.util.concurrent.ThreadPoolExecutor.runWorker(null:-1) at java.util.concurrent.ThreadPoolExecutor$Worker.run(null:-1) at java.lang.Thread.run(null:-1) General Information: reported-by: anonymous-id: f108dead-da00-4063-b1fe-d0e4ca098320 eclipse-build-id: 4.5.0.I20141029-2000 eclipse-product: org.eclipse.epp.package.committers.product operating system: Windows7 6.1.0 (x86) - win32 jre-version: 1.8.0_25-b18 The following plug-ins were present on the execution stack (*): 1. org.eclipse.core.databinding.observable_1.4.1.v20140910-2107 2. org.eclipse.core.databinding_1.4.100.v20141002-1314 3. org.eclipse.core.runtime_3.10.0.v20140724-1132 4. org.eclipse.e4.ui.workbench_1.3.0.v20141024-2249 5. org.eclipse.e4.ui.workbench.swt_0.12.100.v20141020-2115 6. org.eclipse.equinox.app_1.3.200.v20130910-1609 7. org.eclipse.equinox.launcher_1.3.0.v20140415-2008 8. org.eclipse.jface_3.11.0.v20141013-0842 9. org.eclipse.jface.text_3.10.0.v20141027-1716 10. org.eclipse.swt_3.104.0.v20141029-1116 11. org.eclipse.ui_3.107.0.v20141010-0853 12. org.eclipse.ui.ide.application_1.0.600.v20141003-0522 13. org.eclipse.ui.ide_3.10.100.v20141024-1629 14. org.eclipse.ui.monitoring_1.0.0.v20141021-2031 Please note that: * Messages, stacktraces, and nested status objects may be shortened. * Bug fields like status, resolution, and whiteboard are sent back to reporters. * The list of present bundles and their respective versions was calculated by package naming heuristics. This may or may not reflect reality. Please visit http://goo.gl/MWFSff for further details. Thank you for your assistance. Your friendly error-reports-inbox.
*** Bug 457101 has been marked as a duplicate of this bug. ***
Moving this to SWT. I'm not sure how to handle these kind of errors. A ui freeze of 57 seconds looks big - maybe even too big? Can any of the SWT committers share some insights whether this is a measurement error or actually a freeze in SWT?
Just my 50 cents: I do SWT development on the Linux/Gtk side, so I can't quite say what goes on in windows land. But in **general SWT** land: one situation where such freeze ups occur if for example you use thread.sleep(<time>) as oppose to display.asyncexec(). Or you execute too much work on the display thread. Also there are two display execs, display.syncexec() makes everything freeze until the thread is done (synchronous execution) display.asyncexec() allows actions to be performed in the background( asynchronous exec). However, in this specific stack trace, it wonders of into Win32/OS land to see if there is an event in the queue that needs to be processed: org.eclipse.swt.internal.win32.OS.PeekMessageW(OS.java:-2) This usually only takes a short time normally, but here it takes a long time. I'm not sure what goes on down there. Maybe windows was very busy with other applications during this time and didn't give swt enough cpu time?
This might be relevant: Eclipse Git gets faster – UI freeze reporting activated by default in saneclipse http://blog.vogella.com/2015/01/09/eclipse-git-gets-faster-ui-freeze-reporting-activated-by-default-in-saneclipse/ https://git.eclipse.org/r/#/c/38890/ (UI freeze fix) https://git.eclipse.org/r/#/c/38863/ https://git.eclipse.org/r/#/c/38860