Community
Participate
Working Groups
Eclipse keeps blocking from time to time. Last time I tried to use Java Content Assist (CTRL + SPACE) it stopped responding. This is NOT a deadlock. The IDE hangs for about 10 minutes and then it starts responding again. Machine: ROG laptop 64 GB RAM, Intel i7-6820HK CPU @ 2.7 GHz, 1.5 TB SSD. OS: Windows 10 Pro, 64-bit Java: "1.8.0_91", Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode) Eclipse Java EE IDE for Web Developers. Version: Neon Release (4.6.0) Build id: 20160613-1800 I'll just attach the jstack trace here. 2016-07-02 23:26:01 Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.91-b14 mixed mode): "Additional info timer" #9077 prio=6 os_prio=0 tid=0x000000001a52e800 nid=0xc14 in Object.wait() [0x000000006028f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.contentassist.AdditionalInfoController$Timer.loop(AdditionalInfoController.java:317) - locked <0x00000000d1e98608> (a org.eclipse.jface.text.contentassist.AdditionalInfoController$1) at org.eclipse.jface.text.contentassist.AdditionalInfoController$Timer.access$5(AdditionalInfoController.java:306) at org.eclipse.jface.text.contentassist.AdditionalInfoController$Timer$6.run(AdditionalInfoController.java:263) at java.lang.Thread.run(Unknown Source) "Worker-904" #9076 prio=5 os_prio=0 tid=0x000000001e938800 nid=0x1bb0 in Object.wait() [0x000000006008f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188) - locked <0x00000000c0107238> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:52) "Worker-899" #8652 prio=5 os_prio=0 tid=0x0000000020bee000 nid=0x1bc in Object.wait() [0x000000007cb1f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188) - locked <0x00000000c0107238> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:52) "Worker-898" #8645 prio=5 os_prio=0 tid=0x000000001a49f000 nid=0x1d84 in Object.wait() [0x000000007c01f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.WorkerPool.sleep(WorkerPool.java:188) - locked <0x00000000c0107238> (a org.eclipse.core.internal.jobs.WorkerPool) at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:220) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:52) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #4924 daemon prio=1 os_prio=-2 tid=0x000000001ae3d800 nid=0x2988 in Object.wait() [0x000000007301f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c3580d60> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #4421 daemon prio=1 os_prio=-2 tid=0x000000001ae3d000 nid=0xd4c in Object.wait() [0x000000005188f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000cae7fae8> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #4167 daemon prio=1 os_prio=-2 tid=0x000000001b4e9000 nid=0x3250 in Object.wait() [0x000000007cc1f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c7080e98> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "Terminal Process Monitor Thread" #4162 daemon prio=6 os_prio=0 tid=0x000000001a55b000 nid=0x2704 in Object.wait() [0x000000007c61f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.cdt.utils.spawner.Spawner.waitFor(Spawner.java:213) - locked <0x00000000c6000908> (a org.eclipse.cdt.utils.spawner.Spawner) at org.eclipse.tm.terminal.connector.process.ProcessMonitor.monitorProcess(ProcessMonitor.java:96) at org.eclipse.tm.terminal.connector.process.ProcessMonitor$1.run(ProcessMonitor.java:72) at java.lang.Thread.run(Unknown Source) "Terminal Output Stream Monitor Thread" #4161 daemon prio=1 os_prio=-2 tid=0x000000001cd5c800 nid=0x2178 runnable [0x000000007c51f000] java.lang.Thread.State: RUNNABLE at org.eclipse.cdt.utils.pty.PTYInputStream.read0(Native Method) at org.eclipse.cdt.utils.pty.PTYInputStream.read(PTYInputStream.java:62) at java.io.BufferedInputStream.read1(Unknown Source) at java.io.BufferedInputStream.read(Unknown Source) - locked <0x00000000c7085050> (a java.io.BufferedInputStream) at java.io.FilterInputStream.read(Unknown Source) at org.eclipse.tm.terminal.view.ui.streams.OutputStreamMonitor.readStream(OutputStreamMonitor.java:197) at org.eclipse.tm.terminal.view.ui.streams.OutputStreamMonitor$1.run(OutputStreamMonitor.java:157) at java.lang.Thread.run(Unknown Source) "Terminal Input Stream Monitor Thread" #4160 daemon prio=6 os_prio=0 tid=0x000000001cd5a800 nid=0x14e8 in Object.wait() [0x000000007c41f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.tm.terminal.view.ui.streams.InputStreamMonitor.writeStream(InputStreamMonitor.java:227) - locked <0x00000000c3080268> (a java.util.LinkedList) at org.eclipse.tm.terminal.view.ui.streams.InputStreamMonitor$1.run(InputStreamMonitor.java:200) at java.lang.Thread.run(Unknown Source) "Spawner Reaper" #4159 daemon prio=6 os_prio=0 tid=0x000000001cd5f800 nid=0x1f50 runnable [0x000000007c31f000] java.lang.Thread.State: RUNNABLE at org.eclipse.cdt.utils.pty.PTY.waitFor(Native Method) at org.eclipse.cdt.utils.pty.PTY.waitFor(PTY.java:238) at org.eclipse.cdt.utils.spawner.Spawner$2.waitFor(Spawner.java:369) at org.eclipse.cdt.utils.spawner.Spawner$Reaper.run(Spawner.java:504) "Worker-747" #3666 prio=5 os_prio=0 tid=0x000000001b4de800 nid=0x1960 in Object.wait() [0x000000005c28f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.tm.internal.terminal.textcanvas.PipedInputStream.waitForAvailable(PipedInputStream.java:236) - locked <0x00000000c7a54ac8> (a org.eclipse.tm.internal.terminal.textcanvas.PipedInputStream$BoundedByteBuffer) at org.eclipse.tm.internal.terminal.emulator.VT100TerminalControl$3.run(VT100TerminalControl.java:517) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #3559 daemon prio=1 os_prio=-2 tid=0x0000000018d60800 nid=0x2200 in Object.wait() [0x000000005558f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000cbf01b40> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #3524 daemon prio=1 os_prio=-2 tid=0x000000001c75a800 nid=0x27ac in Object.wait() [0x000000005318f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c660ea48> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #2982 daemon prio=1 os_prio=-2 tid=0x000000001c755000 nid=0x1ef4 in Object.wait() [0x000000006d24f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c37108f8> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #2764 daemon prio=1 os_prio=-2 tid=0x000000001f8cd000 nid=0x1ea8 in Object.wait() [0x000000005ed8f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c6b80058> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #2635 daemon prio=1 os_prio=-2 tid=0x000000001a55e000 nid=0x31f4 in Object.wait() [0x000000005648f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c3c024f0> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #2489 daemon prio=1 os_prio=-2 tid=0x0000000021181800 nid=0x18c4 in Object.wait() [0x000000004ca8f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c3500d08> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor" #1114 daemon prio=1 os_prio=-2 tid=0x000000001b4df000 nid=0x1b68 in Object.wait() [0x000000007711f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.wst.sse.ui.internal.reconcile.DirtyRegionProcessor$BackgroundThread.run(DirtyRegionProcessor.java:667) - locked <0x00000000c64035d0> (a java.util.Collections$SynchronizedRandomAccessList) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #615 daemon prio=1 os_prio=-2 tid=0x0000000022382000 nid=0x21d0 in Object.wait() [0x000000005708f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c7e01530> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "Dali Event Handler" #502 prio=6 os_prio=0 tid=0x0000000021181000 nid=0x31c4 in Object.wait() [0x000000004fd8f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.jpt.common.utility.internal.queue.SynchronizedQueue.waitUntilEmptyIs_(SynchronizedQueue.java:134) at org.eclipse.jpt.common.utility.internal.queue.SynchronizedQueue.waitUntilEmptyIs(SynchronizedQueue.java:125) - locked <0x00000000c7e81630> (a org.eclipse.jpt.common.utility.internal.queue.SynchronizedQueue) at org.eclipse.jpt.common.utility.internal.queue.SynchronizedQueue.waitUntilNotEmpty(SynchronizedQueue.java:149) at org.eclipse.jpt.common.utility.internal.command.AbstractAsynchronousCommandContext.waitForCommand(AbstractAsynchronousCommandContext.java:154) at org.eclipse.jpt.common.utility.internal.command.AbstractAsynchronousCommandContext$Consumer.waitForProducer(AbstractAsynchronousCommandContext.java:189) at org.eclipse.jpt.common.utility.internal.ConsumerThreadCoordinator$RunnableConsumer.run(ConsumerThreadCoordinator.java:194) at java.lang.Thread.run(Unknown Source) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #496 daemon prio=1 os_prio=-2 tid=0x000000001c759800 nid=0x2114 in Object.wait() [0x000000004f88f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c1e81b20> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #237 daemon prio=1 os_prio=-2 tid=0x000000001c74e800 nid=0x314 in Object.wait() [0x000000003f58f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c9d70848> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "Timer-0" #134 daemon prio=6 os_prio=0 tid=0x000000001cd59000 nid=0x1e74 in Object.wait() [0x000000003998f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.util.TimerThread.mainLoop(Unknown Source) - locked <0x00000000c9d86ca8> (a java.util.TaskQueue) at java.util.TimerThread.run(Unknown Source) "Recommenders-Timeout-Manager" #110 prio=5 os_prio=0 tid=0x000000001a55e800 nid=0x1eb4 waiting on condition [0x000000003808f000] java.lang.Thread.State: WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00000000c1a01ad8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.park(Unknown Source) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) "com.google.inject.internal.util.$Finalizer" #108 daemon prio=6 os_prio=0 tid=0x0000000021187000 nid=0x2490 in Object.wait() [0x0000000037c8f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.ref.ReferenceQueue.remove(Unknown Source) - locked <0x00000000c7e01540> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) at com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114) "[ThreadPool Manager] - Idle Thread" #102 daemon prio=5 os_prio=0 tid=0x0000000021178000 nid=0x3118 in Object.wait() [0x00000000361df000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor.run(Executor.java:106) - locked <0x00000000c18047d0> (a org.eclipse.equinox.internal.util.impl.tpt.threadpool.Executor) "Provisioning Event Dispatcher" #66 daemon prio=5 os_prio=0 tid=0x000000002237a000 nid=0x78c in Object.wait() [0x0000000032dbf000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400) - locked <0x00000000c3305fd8> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336) "Thread-9" #47 prio=5 os_prio=0 tid=0x000000001a564000 nid=0x12a4 waiting on condition [0x00000000309cf000] java.lang.Thread.State: TIMED_WAITING (sleeping) at java.lang.Thread.sleep(Native Method) at org.eclipse.equinox.internal.p2.updatechecker.UpdateChecker$UpdateCheckThread.run(UpdateChecker.java:68) "JavaScript indexing" #46 daemon prio=4 os_prio=-1 tid=0x000000001a564800 nid=0x33e4 in Object.wait() [0x00000000308cf000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.wst.jsdt.internal.core.search.processing.JobManager.run(JobManager.java:370) - locked <0x00000000c4211be0> (a org.eclipse.wst.jsdt.internal.core.search.indexing.IndexManager) at java.lang.Thread.run(Unknown Source) "org.eclipse.jdt.internal.ui.text.JavaReconciler" #36 daemon prio=1 os_prio=-2 tid=0x000000001a55a000 nid=0x2d90 in Object.wait() [0x000000002b52f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:180) - locked <0x00000000c9d86e78> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue) "EventAdmin Async Event Dispatcher Thread" #33 daemon prio=6 os_prio=0 tid=0x000000001a557000 nid=0x1284 in Object.wait() [0x0000000029f9f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400) - locked <0x00000000c5601650> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336) "Java indexing" #29 daemon prio=4 os_prio=-1 tid=0x0000000018d65000 nid=0x1030 in Object.wait() [0x000000002567f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.jdt.internal.core.search.processing.JobManager.run(JobManager.java:371) - locked <0x00000000c4798098> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager) at java.lang.Thread.run(Unknown Source) "EMF Reference Cleaner" #21 daemon prio=5 os_prio=0 tid=0x0000000018d63000 nid=0xf70 in Object.wait() [0x000000001efbf000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.ref.ReferenceQueue.remove(Unknown Source) - locked <0x00000000c018b510> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) at org.eclipse.emf.common.util.CommonUtil$1ReferenceClearingQueuePollingThread.run(CommonUtil.java:70) "Worker-JM" #20 prio=5 os_prio=0 tid=0x000000001aa8d000 nid=0x1cb0 in Object.wait() [0x000000001eb0f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.core.internal.jobs.InternalWorker.run(InternalWorker.java:59) - locked <0x00000000c1c83ee0> (a java.util.ArrayList) "Bundle File Closer" #19 daemon prio=5 os_prio=0 tid=0x000000001b316800 nid=0x2914 in Object.wait() [0x000000001da3f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400) - locked <0x00000000c2483200> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336) "[Timer] - Main Queue Handler" #18 daemon prio=5 os_prio=0 tid=0x000000001b3ee000 nid=0x1fdc in Object.wait() [0x000000001d73f000] java.lang.Thread.State: TIMED_WAITING (on object monitor) at java.lang.Object.wait(Native Method) at org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run(TimerImpl.java:141) - locked <0x00000000c2483008> (a java.lang.Object) at java.lang.Thread.run(Unknown Source) "Start Level: Equinox Container: 60ebeebd-3f3f-0016-1d36-c33cb20455d7" #16 daemon prio=5 os_prio=0 tid=0x000000001afc1000 nid=0x23e8 in Object.wait() [0x000000001d33f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400) - locked <0x00000000c23834c8> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336) "Framework Event Dispatcher: org.eclipse.osgi.internal.framework.EquinoxEventPublisher@f1266c6" #15 daemon prio=5 os_prio=0 tid=0x000000001b2c0800 nid=0x2810 in Object.wait() [0x000000001d23f000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400) - locked <0x00000000c2483078> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread) at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:336) "Active Thread: Equinox Container: 60ebeebd-3f3f-0016-1d36-c33cb20455d7" #13 prio=5 os_prio=0 tid=0x000000001aaa7800 nid=0x2414 waiting on condition [0x000000001d13f000] java.lang.Thread.State: TIMED_WAITING (parking) at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00000000c1000188> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source) at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) "Service Thread" #11 daemon prio=9 os_prio=0 tid=0x0000000018d59800 nid=0x2870 runnable [0x0000000000000000] java.lang.Thread.State: RUNNABLE "C1 CompilerThread3" #10 daemon prio=9 os_prio=2 tid=0x0000000018cce000 nid=0x2658 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "C2 CompilerThread2" #9 daemon prio=9 os_prio=2 tid=0x0000000018ccc800 nid=0x316c waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "C2 CompilerThread1" #8 daemon prio=9 os_prio=2 tid=0x0000000018ccb800 nid=0x3240 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "C2 CompilerThread0" #7 daemon prio=9 os_prio=2 tid=0x0000000018cca800 nid=0x2c40 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Attach Listener" #6 daemon prio=5 os_prio=2 tid=0x0000000018cc9800 nid=0x2784 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Signal Dispatcher" #5 daemon prio=9 os_prio=2 tid=0x0000000018cc8800 nid=0x52c runnable [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Surrogate Locker Thread (Concurrent GC)" #4 daemon prio=9 os_prio=0 tid=0x0000000018cd2800 nid=0x23e4 waiting on condition [0x0000000000000000] java.lang.Thread.State: RUNNABLE "Finalizer" #3 daemon prio=8 os_prio=1 tid=0x0000000018c6e000 nid=0xab4 in Object.wait() [0x00000000199ff000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.ref.ReferenceQueue.remove(Unknown Source) - locked <0x00000000c0f805b0> (a java.lang.ref.ReferenceQueue$Lock) at java.lang.ref.ReferenceQueue.remove(Unknown Source) at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source) "Reference Handler" #2 daemon prio=10 os_prio=2 tid=0x0000000018c67000 nid=0x1ec0 in Object.wait() [0x00000000198ff000] java.lang.Thread.State: WAITING (on object monitor) at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Unknown Source) at java.lang.ref.Reference.tryHandlePending(Unknown Source) - locked <0x00000000c0f805a0> (a java.lang.ref.Reference$Lock) at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source) "main" #1 prio=6 os_prio=0 tid=0x0000000002510800 nid=0x3378 runnable [0x000000000014d000] java.lang.Thread.State: RUNNABLE at org.eclipse.swt.internal.win32.OS.PrintDlgW(Native Method) at org.eclipse.swt.internal.win32.OS.PrintDlg(OS.java:3159) at org.eclipse.swt.printing.PrintDialog.open(PrintDialog.java:453) at org.eclipse.jface.text.TextViewer.print(TextViewer.java:4412) at org.eclipse.ui.texteditor.AbstractDecoratedTextEditor$11.run(AbstractDecoratedTextEditor.java:1379) at org.eclipse.jface.action.Action.runWithEvent(Action.java:473) at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:118) at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90) at sun.reflect.GeneratedMethodAccessor63.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54) at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:282) at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:264) at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132) at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152) at org.eclipse.core.commands.Command.executeWithChecks(Command.java:494) at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:488) at org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:210) at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.executeCommand(KeyBindingDispatcher.java:286) at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.press(KeyBindingDispatcher.java:507) at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.processKeyEvent(KeyBindingDispatcher.java:558) at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.filterKeySequenceBindings(KeyBindingDispatcher.java:378) at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher.access$0(KeyBindingDispatcher.java:324) at org.eclipse.e4.ui.bindings.keys.KeyBindingDispatcher$KeyDownFilter.handleEvent(KeyBindingDispatcher.java:86) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1270) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1078) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1103) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1088) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1130) at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1126) at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1547) at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4910) at org.eclipse.swt.widgets.Canvas.WM_CHAR(Canvas.java:364) at org.eclipse.swt.widgets.Control.windowProc(Control.java:4791) at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:359) at org.eclipse.swt.widgets.Display.windowProc(Display.java:5102) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2552) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3814) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1121) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1022) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:150) at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:687) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:604) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148) 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:388) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610) at org.eclipse.equinox.launcher.Main.run(Main.java:1519) "VM Thread" os_prio=2 tid=0x0000000018c64000 nid=0x2a08 runnable "Gang worker#0 (Parallel GC Threads)" os_prio=2 tid=0x0000000002528000 nid=0xacc runnable "Gang worker#1 (Parallel GC Threads)" os_prio=2 tid=0x000000000252a000 nid=0x1300 runnable "Gang worker#2 (Parallel GC Threads)" os_prio=2 tid=0x000000000252c800 nid=0x18fc runnable "Gang worker#3 (Parallel GC Threads)" os_prio=2 tid=0x0000000002531000 nid=0x2c70 runnable "Gang worker#4 (Parallel GC Threads)" os_prio=2 tid=0x0000000002532800 nid=0x2b60 runnable "Gang worker#5 (Parallel GC Threads)" os_prio=2 tid=0x0000000002533800 nid=0x115c runnable "Gang worker#6 (Parallel GC Threads)" os_prio=2 tid=0x0000000002536800 nid=0x2068 runnable "Gang worker#7 (Parallel GC Threads)" os_prio=2 tid=0x0000000002537800 nid=0x116c runnable "G1 Main Concurrent Mark GC Thread" os_prio=2 tid=0x00000000025a0800 nid=0x233c runnable "Gang worker#0 (G1 Parallel Marking Threads)" os_prio=2 tid=0x00000000025a1800 nid=0x1690 runnable "Gang worker#1 (G1 Parallel Marking Threads)" os_prio=2 tid=0x00000000025a2000 nid=0x1e34 runnable "G1 Concurrent Refinement Thread#0" os_prio=2 tid=0x000000000254c800 nid=0x1b88 runnable "G1 Concurrent Refinement Thread#1" os_prio=2 tid=0x0000000002548800 nid=0x2a18 runnable "G1 Concurrent Refinement Thread#2" os_prio=2 tid=0x0000000002547800 nid=0x92c runnable "G1 Concurrent Refinement Thread#3" os_prio=2 tid=0x0000000002544800 nid=0x1e08 runnable "G1 Concurrent Refinement Thread#4" os_prio=2 tid=0x000000000253f800 nid=0x1040 runnable "G1 Concurrent Refinement Thread#5" os_prio=2 tid=0x000000000253e800 nid=0x29e4 runnable "G1 Concurrent Refinement Thread#6" os_prio=2 tid=0x000000000253b800 nid=0x854 runnable "G1 Concurrent Refinement Thread#7" os_prio=2 tid=0x000000000253a000 nid=0x11e4 runnable "G1 Concurrent Refinement Thread#8" os_prio=2 tid=0x0000000002539000 nid=0x368 runnable "String Deduplication Thread" os_prio=2 tid=0x0000000018ab5800 nid=0x3210 runnable "VM Periodic Task Thread" os_prio=2 tid=0x0000000018d9f800 nid=0x172c waiting on condition JNI global references: 729
So, you're using Eclipse IDE for JEE, and in the Java Editor , the Ctrl+Space content assist triggered the hang. - did you launched some job, and stopped them by pressing the red "stop icon", like in this image ? if so, which Jobs you stopped before the Hang? In the stack trace I see org.eclipse.cdt.utils.pty.PTYInputStream is mentioned. You probably installed CDT plug-ins, isn'it? Moving to WebTools
PS: stopping a Job pressing a button, like in this image: http://i.imgur.com/zHUXgfC.png
Created attachment 262904 [details] Installed plugins
(In reply to Veaceslav Bacu from comment #3) > Created attachment 262904 [details] > Installed plugins Seems a normal JEE Installation plus additional plug-ins. Did you installed additional plug-ins on top of the Eclipse JEE Package? If so, which additional plug-ins did you install ?
I'm not sure if I stopped any job. I was writing code in Java Editor and was pressing CTRL + SPACE from time to time, at some point when I pressed CTRL + SPACE it started hanging. Eclipse stopped responding for about 10 minutes. I thought it's a deadlock somewhere in eclipse (I've seen it before, many years ago) so I took the jstack trace of the process, looked at it, but nothing suggested anything about a deadlock. So I waited for about 10 minutes and it magically started responding again. This happened several times already so it needs to be fixed. I'm sure many users are/will experience the same issue. I did not install any CDT plugins. I just installed the latest official JEE release, it happened to be on this mirror: http://eclipse.mirror.rafal.ca/oomph/epp/neon/R/eclipse-inst-win64.exe You have an installer now, so the CDT package might have been installed by the installer. I just attached a list of all the installed plugins (you can find 'org.eclipse.cdt.core.native' and others). I have to say that I did not install any particular plugin on my own, except for what has been installed during the installation. I think I might go to an earlier version of eclipse as I'm not enjoying working with this release because of this issue.
The link I provided is just a default installer. I selected JEE and followed the next installation steps.
(In reply to Veaceslav Bacu from comment #5) > > I think I might go to an earlier version of eclipse as I'm not enjoying > working with this release because of this issue. Ok, I'm sorry for hearing that. I work on Win 10 on a comparable PC, and I really feel that Neon is faster and better than the previous version. However, I see your point. We're open to improvements, and I want to thank you for the energies you put in the report, and for your patience. One last question: You said eclipse started hanging after pressing repeatedly Ctrl+Space. Were you in the Java Editor, or another editor ?
I was in Java Editor. During the 'freezing' time I took one jstack trace, then another one several minutes later, both while the IDE was hanging. The stack trace of the "main" (UI) thread was the same in both cases: "main" #1 prio=6 os_prio=0 tid=0x0000000002510800 nid=0x3378 runnable [0x000000000014d000] java.lang.Thread.State: RUNNABLE at org.eclipse.swt.internal.win32.OS.PrintDlgW(Native Method) at org.eclipse.swt.internal.win32.OS.PrintDlg(OS.java:3159) at org.eclipse.swt.printing.PrintDialog.open(PrintDialog.java:453) at org.eclipse.jface.text.TextViewer.print(TextViewer.java:4412) at org.eclipse.ui.texteditor.AbstractDecoratedTextEditor$11.run(AbstractDecoratedTextEditor.java:1379) at org.eclipse.jface.action.Action.runWithEvent(Action.java:473) at org.eclipse.jface.commands.ActionHandler.execute(ActionHandler.java:118) at org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:90) at sun.reflect.GeneratedMethodAccessor63.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:54) at org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:282) at org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:264) at org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:132) at org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:152).... Since Eclipse has only one UI thread and it was blocked (though the thread was officially 'runnable', not 'waiting') for 10 minutes at this step: at org.eclipse.swt.internal.win32.OS.PrintDlgW(Native Method) at org.eclipse.swt.internal.win32.OS.PrintDlg(OS.java:3159) I would say the concerning piece is somewhere in this class: org.eclipse.swt.internal.win32.OS.PrintDlgW
Ok. I just reproduced it again. Pressed CTRL + SPACE and immediately pressed CTRL + P (print). Took the stacktrace again (several times) and it shows that eclipse ("main" thread) is blocked at org.eclipse.swt.internal.win32.OS.PrintDlgW although the thread is 'runnable', not 'waiting'. I think the problem is with my Windows 10 Pro, not with eclipse. I just tried pressing CTRL + P in other applications (Firefox, Chrome) and they both stopped responding. If there is a bug, it's in Windows, not in Eclipse. You can close this bug. Thanks for the amazing work ! We love eclipse, btw.