Closed kdvolder closed 4 years ago
PS: I'd be willing to help you debug this but not sure at the moment how.
It is also possible this isn't actually a problem with Ansi console itself but a problem with Eclipse Platoform Theming support (in which case the problem should be raised against Eclipse bugzilla).
I tried to collect a stackdump of the process in it's 'stuck' state. Pasting below. It appears to busy on the ui thread with some work related to CSS rendering. So I think it points to the 'Theme' support in Eclipse platform.
2019-11-21 16:38:09
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.211-b12 mixed mode):
"JMX client heartbeat 10" #97 daemon prio=5 os_prio=0 tid=0x0000000023809000 nid=0x1f3c waiting on condition [0x0000000034c3f000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.sun.jmx.remote.internal.ClientCommunicatorAdmin$Checker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"RMI RenewClean-[localhost:49807]" #96 daemon prio=5 os_prio=0 tid=0x0000000023806000 nid=0x1fd4 in Object.wait() [0x0000000034b3e000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
- locked <0x00000000dd180898> (a java.lang.ref.ReferenceQueue$Lock)
at sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"Process monitor" #95 daemon prio=5 os_prio=0 tid=0x0000000023804800 nid=0x1ef4 runnable [0x0000000034a3f000]
java.lang.Thread.State: RUNNABLE
at java.lang.ProcessImpl.waitForInterruptibly(Native Method)
at java.lang.ProcessImpl.waitFor(Unknown Source)
at org.eclipse.debug.core.model.RuntimeProcess$ProcessMonitorThread.run(RuntimeProcess.java:427)
"Input Stream Monitor" #94 daemon prio=5 os_prio=0 tid=0x0000000023803000 nid=0x1c7c in Object.wait() [0x000000003493f000]
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.debug.internal.core.InputStreamMonitor.writeNext(InputStreamMonitor.java:154)
- locked <0x00000000dd180aa0> (a java.lang.Object)
at org.eclipse.debug.internal.core.InputStreamMonitor.write(InputStreamMonitor.java:123)
at org.eclipse.debug.internal.core.InputStreamMonitor$$Lambda$800/1058396616.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"Output Stream Monitor" #93 daemon prio=1 os_prio=-2 tid=0x0000000023807800 nid=0x19ac runnable [0x000000003483e000]
java.lang.Thread.State: RUNNABLE
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(Unknown Source)
at java.io.BufferedInputStream.read1(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
- locked <0x00000000dd080990> (a java.io.BufferedInputStream)
at sun.nio.cs.StreamDecoder.readBytes(Unknown Source)
at sun.nio.cs.StreamDecoder.implRead(Unknown Source)
at sun.nio.cs.StreamDecoder.read(Unknown Source)
- locked <0x00000000dd080a18> (a java.io.InputStreamReader)
at java.io.InputStreamReader.read(Unknown Source)
at java.io.Reader.read(Unknown Source)
at org.eclipse.debug.internal.core.OutputStreamMonitor.internalRead(OutputStreamMonitor.java:158)
at org.eclipse.debug.internal.core.OutputStreamMonitor.read(OutputStreamMonitor.java:133)
at org.eclipse.debug.internal.core.OutputStreamMonitor$$Lambda$799/21722875.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"Output Stream Monitor" #92 daemon prio=1 os_prio=-2 tid=0x0000000023801800 nid=0x1560 runnable [0x000000003473e000]
java.lang.Thread.State: RUNNABLE
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(Unknown Source)
at java.io.BufferedInputStream.read1(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
- locked <0x00000000dd182cb8> (a java.io.BufferedInputStream)
at java.io.BufferedInputStream.read1(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
- locked <0x00000000dd182ce0> (a java.io.BufferedInputStream)
at sun.nio.cs.StreamDecoder.readBytes(Unknown Source)
at sun.nio.cs.StreamDecoder.implRead(Unknown Source)
at sun.nio.cs.StreamDecoder.read(Unknown Source)
- locked <0x00000000dd182d68> (a java.io.InputStreamReader)
at java.io.InputStreamReader.read(Unknown Source)
at java.io.Reader.read(Unknown Source)
at org.eclipse.debug.internal.core.OutputStreamMonitor.internalRead(OutputStreamMonitor.java:158)
at org.eclipse.debug.internal.core.OutputStreamMonitor.read(OutputStreamMonitor.java:133)
at org.eclipse.debug.internal.core.OutputStreamMonitor$$Lambda$799/21722875.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"GC Daemon" #69 daemon prio=2 os_prio=-2 tid=0x000000002380b800 nid=0x5ec in Object.wait() [0x00000000312df000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at sun.misc.GC$Daemon.run(Unknown Source)
- locked <0x00000000c4900dc0> (a sun.misc.GC$LatencyLock)
"RMI RenewClean-[localhost:49775]" #68 daemon prio=5 os_prio=0 tid=0x0000000023805800 nid=0x45c in Object.wait() [0x00000000311de000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
- locked <0x00000000c4981c48> (a java.lang.ref.ReferenceQueue$Lock)
at sun.rmi.transport.DGCClient$EndpointEntry$RenewCleanThread.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"JMX server connection timeout 60" #60 daemon prio=5 os_prio=0 tid=0x000000002e362800 nid=0x193c in Object.wait() [0x00000000309de000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at com.sun.jmx.remote.internal.ServerCommunicatorAdmin$Timeout.run(Unknown Source)
- locked <0x00000000c5289500> (a [I)
at java.lang.Thread.run(Unknown Source)
"RMI Scheduler(0)" #59 daemon prio=5 os_prio=0 tid=0x000000002e35d000 nid=0x1d30 waiting on condition [0x00000000308de000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000c5289698> (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)
"RMI TCP Accept-0" #57 daemon prio=5 os_prio=0 tid=0x000000002e35c800 nid=0x1cbc runnable [0x00000000304de000]
java.lang.Thread.State: RUNNABLE
at java.net.DualStackPlainSocketImpl.accept0(Native Method)
at java.net.DualStackPlainSocketImpl.socketAccept(Unknown Source)
at java.net.AbstractPlainSocketImpl.accept(Unknown Source)
at java.net.PlainSocketImpl.accept(Unknown Source)
- locked <0x00000000c5210b68> (a java.net.SocksSocketImpl)
at java.net.ServerSocket.implAccept(Unknown Source)
at java.net.ServerSocket.accept(Unknown Source)
at sun.management.jmxremote.LocalRMIServerSocketFactory$1.accept(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(Unknown Source)
at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
"Thread-12" #48 prio=5 os_prio=0 tid=0x000000001b1bf000 nid=0x158c waiting on condition [0x000000002cc3f000]
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:73)
"Worker-5: Process Console Input Job" #41 prio=5 os_prio=0 tid=0x000000001de73800 nid=0x172c in Object.wait() [0x000000002bf1f000]
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.ui.console.IOConsoleInputStream.waitForData(IOConsoleInputStream.java:141)
at org.eclipse.ui.console.IOConsoleInputStream.read(IOConsoleInputStream.java:92)
- locked <0x00000000dd002220> (a org.eclipse.ui.console.IOConsoleInputStream)
at sun.nio.cs.StreamDecoder.readBytes(Unknown Source)
at sun.nio.cs.StreamDecoder.implRead(Unknown Source)
at sun.nio.cs.StreamDecoder.read(Unknown Source)
- locked <0x00000000dd002250> (a java.io.InputStreamReader)
at java.io.InputStreamReader.read(Unknown Source)
at java.io.Reader.read(Unknown Source)
at org.eclipse.debug.internal.ui.views.console.ProcessConsole$InputReadJob.run(ProcessConsole.java:766)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
"Worker-3" #38 prio=5 os_prio=0 tid=0x000000001de77800 nid=0x1cac in Object.wait() [0x000000002bc1e000]
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:200)
- locked <0x00000000c1d08968> (a org.eclipse.core.internal.jobs.WorkerPool)
at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:242)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
"Worker-2" #37 prio=5 os_prio=0 tid=0x000000001de76000 nid=0x1cb0 in Object.wait() [0x000000002bb1f000]
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:200)
- locked <0x00000000c1d08968> (a org.eclipse.core.internal.jobs.WorkerPool)
at org.eclipse.core.internal.jobs.WorkerPool.startJob(WorkerPool.java:242)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:58)
"EventAdmin Async Event Dispatcher Thread" #35 daemon prio=6 os_prio=0 tid=0x000000001de78000 nid=0x1c70 in Object.wait() [0x000000002b91e000]
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 <0x00000000c5390578> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:341)
"pool-2-thread-1" #34 prio=5 os_prio=0 tid=0x000000001de76800 nid=0x18d4 runnable [0x000000002956f000]
java.lang.Thread.State: RUNNABLE
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(Unknown Source)
at java.io.BufferedInputStream.fill(Unknown Source)
at java.io.BufferedInputStream.read(Unknown Source)
- locked <0x00000000c5392950> (a java.io.BufferedInputStream)
at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:79)
at org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:113)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(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)
"Consume LS error stream" #33 prio=6 os_prio=0 tid=0x000000001de74800 nid=0x1b18 runnable [0x000000002946f000]
java.lang.Thread.State: RUNNABLE
at java.io.FileInputStream.readBytes(Native Method)
at java.io.FileInputStream.read(Unknown Source)
at org.springsource.ide.eclipse.commons.core.util.IOUtil.consume(IOUtil.java:26)
at org.springframework.tooling.ls.eclipse.commons.STS4LanguageServerProcessStreamConnector$1.run(STS4LanguageServerProcessStreamConnector.java:66)
"org.eclipse.jdt.internal.ui.text.JavaReconciler" #31 daemon prio=1 os_prio=-2 tid=0x000000001d3f9800 nid=0x37c in Object.wait() [0x00000000280ef000]
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:183)
- locked <0x00000000c5498020> (a org.eclipse.jface.text.reconciler.DirtyRegionQueue)
"Java indexing" #29 daemon prio=4 os_prio=-1 tid=0x000000001d3fa800 nid=0x1768 in Object.wait() [0x0000000024a6f000]
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:378)
- locked <0x00000000c40ac120> (a org.eclipse.jdt.internal.core.search.indexing.IndexManager)
at java.lang.Thread.run(Unknown Source)
"Bundle File Closer" #27 daemon prio=6 os_prio=0 tid=0x000000001d3fe000 nid=0x1398 in Object.wait() [0x000000002143e000]
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 <0x00000000c1399028> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:341)
"EMF Reference Cleaner" #26 daemon prio=6 os_prio=0 tid=0x000000001d3fc800 nid=0x135c in Object.wait() [0x000000001e9de000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
- locked <0x00000000c1399330> (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)
"Gogo shell" #21 prio=5 os_prio=0 tid=0x000000001b401800 nid=0x11b8 waiting on condition [0x000000001cc3e000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000c1d08b08> (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.LinkedBlockingQueue.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)
"Worker-JM" #18 prio=5 os_prio=0 tid=0x000000001b4d8000 nid=0x1dac in Object.wait() [0x000000001c83f000]
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:62)
- locked <0x00000000c1d08f20> (a java.util.ArrayList)
"SCR Component Actor" #16 daemon prio=5 os_prio=0 tid=0x000000001aecd000 nid=0xd60 in Object.wait() [0x000000001c0ff000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c1d08f00> (a java.util.LinkedList)
at java.lang.Object.wait(Unknown Source)
at org.apache.felix.scr.impl.ComponentActorThread.run(ComponentActorThread.java:83)
- locked <0x00000000c1d08f00> (a java.util.LinkedList)
at java.lang.Thread.run(Unknown Source)
"Start Level: Equinox Container: 6a836d97-c831-403d-9896-772c1f78d6d5" #15 daemon prio=5 os_prio=0 tid=0x000000001af89000 nid=0xd78 in Object.wait() [0x000000001bfff000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000c1d08bf0> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
at java.lang.Object.wait(Unknown Source)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.getNextEvent(EventManager.java:400)
- locked <0x00000000c1d08bf0> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:341)
"Framework Event Dispatcher: Equinox Container: 6a836d97-c831-403d-9896-772c1f78d6d5" #14 daemon prio=5 os_prio=0 tid=0x000000001af73800 nid=0xe7c in Object.wait() [0x000000001beff000]
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 <0x00000000c1d08d78> (a org.eclipse.osgi.framework.eventmgr.EventManager$EventThread)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:341)
"Active Thread: Equinox Container: 6a836d97-c831-403d-9896-772c1f78d6d5" #12 prio=5 os_prio=0 tid=0x000000001ae09000 nid=0xe08 waiting on condition [0x000000001bdfe000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000c0b01110> (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" #10 daemon prio=9 os_prio=0 tid=0x0000000018a4f000 nid=0xe30 runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C1 CompilerThread2" #9 daemon prio=9 os_prio=2 tid=0x000000001897b000 nid=0xe34 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C2 CompilerThread1" #8 daemon prio=9 os_prio=2 tid=0x000000001897a000 nid=0xe48 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C2 CompilerThread0" #7 daemon prio=9 os_prio=2 tid=0x0000000018979000 nid=0xe44 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Attach Listener" #6 daemon prio=5 os_prio=2 tid=0x0000000018978800 nid=0xe38 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Signal Dispatcher" #5 daemon prio=9 os_prio=2 tid=0x0000000018973800 nid=0xe3c runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Surrogate Locker Thread (Concurrent GC)" #4 daemon prio=9 os_prio=0 tid=0x00000000189c0800 nid=0xe40 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Finalizer" #3 daemon prio=8 os_prio=1 tid=0x0000000018958000 nid=0xe4c in Object.wait() [0x0000000018f0f000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
- locked <0x00000000c015cb30> (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=0x0000000018951000 nid=0x1488 in Object.wait() [0x0000000018e0f000]
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 <0x00000000c015c3b0> (a java.lang.ref.Reference$Lock)
at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)
"main" #1 prio=6 os_prio=0 tid=0x0000000002c90800 nid=0x1de4 runnable [0x000000000094f000]
java.lang.Thread.State: RUNNABLE
at org.eclipse.swt.internal.win32.OS.ScriptShape(Native Method)
at org.eclipse.swt.graphics.TextLayout.shape(TextLayout.java:3423)
at org.eclipse.swt.graphics.TextLayout.shape(TextLayout.java:3620)
at org.eclipse.swt.graphics.TextLayout.computeRuns(TextLayout.java:246)
at org.eclipse.swt.graphics.TextLayout.getLineCount(TextLayout.java:1892)
at org.eclipse.swt.custom.StyledTextRenderer.getTextLayout(StyledTextRenderer.java:1251)
at org.eclipse.swt.custom.StyledTextRenderer.getTextLayout(StyledTextRenderer.java:888)
at org.eclipse.swt.custom.StyledTextRenderer.calculate(StyledTextRenderer.java:296)
at org.eclipse.swt.custom.StyledTextRenderer.calculateClientArea(StyledTextRenderer.java:325)
at org.eclipse.swt.custom.StyledText.resetCache(StyledText.java:8110)
at org.eclipse.swt.custom.StyledText.redraw(StyledText.java:7655)
at org.eclipse.e4.ui.internal.css.swt.dom.scrollbar.StyledTextThemedScrollBarAdapter$StyledTextPaintListener.redrawScrollBars(StyledTextThemedScrollBarAdapter.java:648)
at org.eclipse.e4.ui.internal.css.swt.dom.scrollbar.AbstractThemedScrollBarAdapter.setScrollBarBorderRadius(AbstractThemedScrollBarAdapter.java:510)
at org.eclipse.e4.ui.css.swt.dom.StyledTextElement.setScrollBarBorderRadius(StyledTextElement.java:83)
at org.eclipse.e4.ui.css.swt.properties.custom.CSSPropertyStyledTextScrollbarSWTHandler.applyCSSProperty(CSSPropertyStyledTextScrollbarSWTHandler.java:74)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyCSSProperty(AbstractCSSEngine.java:724)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyleDeclaration(AbstractCSSEngine.java:534)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:409)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:356)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:427)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:356)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:427)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:356)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:427)
at org.eclipse.e4.ui.css.core.impl.engine.AbstractCSSEngine.applyStyles(AbstractCSSEngine.java:356)
at org.eclipse.e4.ui.css.swt.internal.theme.ThemeEngine.applyStyles(ThemeEngine.java:543)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.setClassnameAndId(PartRenderingEngine.java:1330)
at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.setCSSInfo(SWTPartRenderer.java:115)
at org.eclipse.e4.ui.workbench.renderers.swt.SWTPartRenderer.styleElement(SWTPartRenderer.java:85)
at org.eclipse.e4.ui.workbench.renderers.swt.StackRenderer.subscribeTopicActivateChanged(StackRenderer.java:534)
at sun.reflect.GeneratedMethodAccessor177.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:58)
at org.eclipse.e4.ui.internal.di.UIEventObjectSupplier$UIEventHandler$1.run(UIEventObjectSupplier.java:67)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:236)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:146)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4622)
at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:219)
at org.eclipse.e4.ui.internal.di.UIEventObjectSupplier$UIEventHandler.handleEvent(UIEventObjectSupplier.java:64)
at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:205)
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:203)
at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151)
at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:132)
at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:75)
at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:44)
at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:55)
at org.eclipse.e4.ui.workbench.UIEvents.publishEvent(UIEvents.java:387)
at org.eclipse.e4.ui.workbench.UIEvents.publishEvent(UIEvents.java:356)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:775)
at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.activate(PartServiceImpl.java:683)
at org.eclipse.e4.ui.internal.workbench.swt.AbstractPartRenderer.activate(AbstractPartRenderer.java:97)
at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.lambda$0(ContributedPartRenderer.java:63)
at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer$$Lambda$323/538661623.handleEvent(Unknown Source)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4173)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1057)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1081)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
at org.eclipse.swt.widgets.Shell.setActiveControl(Shell.java:1510)
at org.eclipse.swt.widgets.Shell.WM_MOUSEACTIVATE(Shell.java:2323)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4805)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:348)
at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1501)
at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2138)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:348)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.DefWindowProc(Native Method)
at org.eclipse.swt.widgets.Scrollable.callWindowProc(Scrollable.java:91)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4858)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:348)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4820)
at org.eclipse.swt.internal.win32.OS.PeekMessage(Native Method)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3580)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1049)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:633)
at org.eclipse.ui.internal.Workbench$$Lambda$99/179455108.run(Unknown Source)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:557)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
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:660)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:597)
at org.eclipse.equinox.launcher.Main.run(Main.java:1468)
"VM Thread" os_prio=2 tid=0x0000000017cec000 nid=0x14a8 runnable
"Gang worker#0 (Parallel GC Threads)" os_prio=2 tid=0x0000000002ca9800 nid=0x1270 runnable
"Gang worker#1 (Parallel GC Threads)" os_prio=2 tid=0x0000000002cab000 nid=0x127c runnable
"Gang worker#2 (Parallel GC Threads)" os_prio=2 tid=0x0000000002cac800 nid=0x1278 runnable
"Gang worker#3 (Parallel GC Threads)" os_prio=2 tid=0x0000000002caf000 nid=0x12b8 runnable
"G1 Main Concurrent Mark GC Thread" os_prio=2 tid=0x0000000002d0c000 nid=0x1450 runnable
"Gang worker#0 (G1 Parallel Marking Threads)" os_prio=2 tid=0x0000000002d0d000 nid=0x147c runnable
"G1 Concurrent Refinement Thread#0" os_prio=2 tid=0x0000000002cb8000 nid=0x1438 runnable
"G1 Concurrent Refinement Thread#1" os_prio=2 tid=0x0000000002cb6800 nid=0xdd8 runnable
"G1 Concurrent Refinement Thread#2" os_prio=2 tid=0x0000000002cb5800 nid=0x13d8 runnable
"G1 Concurrent Refinement Thread#3" os_prio=2 tid=0x0000000002cb2000 nid=0x13f4 runnable
"G1 Concurrent Refinement Thread#4" os_prio=2 tid=0x0000000002cb1000 nid=0x1334 runnable
"String Deduplication Thread" os_prio=2 tid=0x0000000017c7d000 nid=0x1474 runnable
"VM Periodic Task Thread" os_prio=2 tid=0x0000000018a70800 nid=0xe0c waiting on condition
JNI global references: 2162
I guess this is actually a duplicate of this: https://github.com/mihnita/ansi-econsole/issues/27
This can be reproduced using the latests STS (4.4.2) and doing the following steps:
At first everything appears to work fine. But after I was using the IDE for a bit more and (amongst other things) looked around in the Eclipse preferences a bit... the IDE became slow, then unresponsive and eventually crashed.
I then disabled the Ansi console from its preferences page. Tried the same experiment again and everything worked fine.
It is a bit strange, but this problem seems very specific to a setup that is running on Windows and is using the Dark theme. There seems to be no problem on Linux or Mac (even with Dark theme). Also working fine on Windows with the light theme.
This issue was reported to us some time ago see:
https://github.com/spring-projects/spring-ide/issues/306