RangerHighlighter with semi-transparent background color freezes GUI

Hi,

Our floobits range highlighter has been freezing the IntelliJ GUI when a lot of text was selected and I finally traced it down to the alpha value.

I created a project here to demo the problem:

https://github.com/btipling/highlighttext

Run intellij with plugin and then select the action it adds "highlight all text" in a decently sized file and then try to scroll and notice how the scroll is locked up.

Then change the value of this line:

https://github.com/btipling/highlighttext/blob/master/src/HighlightAllText.java#L30

attributes.setBackgroundColor(new Color(255, 0, 0, 50));



to

attributes.setBackgroundColor(Color.GREEN);


and try again and see the UI does not freeze up.

4 comments
Comment actions Permalink

Could you please capture the thread dump during the freeze and post it here? Thanks!

0
Comment actions Permalink

Hi Dmitry, sorry for the late response! Here's a dump from jstack below. This is when I have highlighted the text with the above plugin and transparency in the color and I try to scroll. The UI is totally frozen.

2015-03-31 17:30:18
Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.71-b01 mixed mode):

"JobScheduler FJ pool 7/8" daemon prio=5 tid=0x00007fb610048000 nid=0x13e17 waiting on condition [0x000000012ce40000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e5f8bb80> (a jsr166e.ForkJoinPool)
 at jsr166e.ForkJoinPool.awaitWork(ForkJoinPool.java:1756)
 at jsr166e.ForkJoinPool.scan(ForkJoinPool.java:1694)
 at jsr166e.ForkJoinPool.runWorker(ForkJoinPool.java:1642)
 at jsr166e.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:109)

"JobScheduler FJ pool 3/8" daemon prio=5 tid=0x00007fb60f060000 nid=0x11e0f waiting on condition [0x000000012c900000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e5f8bb80> (a jsr166e.ForkJoinPool)
 at jsr166e.ForkJoinPool.awaitWork(ForkJoinPool.java:1756)
 at jsr166e.ForkJoinPool.scan(ForkJoinPool.java:1694)
 at jsr166e.ForkJoinPool.runWorker(ForkJoinPool.java:1642)
 at jsr166e.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:109)

"Attach Listener" daemon prio=5 tid=0x00007fb60f019000 nid=0x972b waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"JobScheduler FJ pool 4/8" daemon prio=5 tid=0x00007fb616362000 nid=0x1660b waiting on condition [0x000000012cd3d000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e5f8bb80> (a jsr166e.ForkJoinPool)
 at jsr166e.ForkJoinPool.awaitWork(ForkJoinPool.java:1756)
 at jsr166e.ForkJoinPool.scan(ForkJoinPool.java:1694)
 at jsr166e.ForkJoinPool.runWorker(ForkJoinPool.java:1642)
 at jsr166e.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:109)

"JobScheduler FJ pool 2/8" daemon prio=5 tid=0x00007fb613e79000 nid=0x16003 waiting on condition [0x000000012e7b5000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e5f8bb80> (a jsr166e.ForkJoinPool)
 at jsr166e.ForkJoinPool.awaitWork(ForkJoinPool.java:1756)
 at jsr166e.ForkJoinPool.scan(ForkJoinPool.java:1694)
 at jsr166e.ForkJoinPool.runWorker(ForkJoinPool.java:1642)
 at jsr166e.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:109)

"JobScheduler FJ pool 1/8" daemon prio=5 tid=0x00007fb61518b800 nid=0x15e17 waiting on condition [0x0000000128264000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e5f8bb80> (a jsr166e.ForkJoinPool)
 at jsr166e.ForkJoinPool.awaitWork(ForkJoinPool.java:1756)
 at jsr166e.ForkJoinPool.scan(ForkJoinPool.java:1694)
 at jsr166e.ForkJoinPool.runWorker(ForkJoinPool.java:1642)
 at jsr166e.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:109)

"FS Synchronizer" daemon prio=5 tid=0x00007fb6162cc000 nid=0x15a1b waiting on condition [0x0000000120fbe000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e0b5bcd8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
 at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"Icons" daemon prio=5 tid=0x00007fb61682d800 nid=0x15607 waiting on condition [0x00000001229dd000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e5036a08> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
 at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"Change List Updater" daemon prio=5 tid=0x00007fb60e589800 nid=0x14503 waiting on condition [0x0000000120a52000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e2fb8b80> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1079)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"ApplicationImpl pooled thread 13" daemon prio=5 tid=0x00007fb60e7f7800 nid=0x14303 waiting on condition [0x0000000122d34000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e221d678> (a java.util.concurrent.SynchronousQueue$TransferStack)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
 at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)
 at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"ApplicationImpl pooled thread 12" prio=5 tid=0x00007fb60e6ab800 nid=0x14103 waiting on condition [0x0000000122753000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e221d678> (a java.util.concurrent.SynchronousQueue$TransferStack)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
 at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)
 at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"ApplicationImpl pooled thread 11" prio=5 tid=0x00007fb6100be000 nid=0x13f03 waiting on condition [0x0000000122650000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e221d678> (a java.util.concurrent.SynchronousQueue$TransferStack)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
 at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)
 at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"EditorNotifications executor" daemon prio=5 tid=0x00007fb60f021000 nid=0x13b07 waiting on condition [0x000000011f04c000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e2f40718> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
 at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"ApplicationImpl pooled thread 10" daemon prio=5 tid=0x00007fb60d02a800 nid=0x13a0b waiting on condition [0x000000011e995000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e221d678> (a java.util.concurrent.SynchronousQueue$TransferStack)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
 at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)
 at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"Encoding detection thread" daemon prio=5 tid=0x00007fb6100bc000 nid=0x13703 waiting on condition [0x000000011e3d0000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e2f67d30> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1079)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"ApplicationImpl pooled thread 9" prio=5 tid=0x00007fb60cdce800 nid=0x13503 waiting on condition [0x000000011cbce000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e221d678> (a java.util.concurrent.SynchronousQueue$TransferStack)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
 at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)
 at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"ApplicationImpl pooled thread 8" prio=5 tid=0x00007fb613d9a800 nid=0x1331b waiting on condition [0x000000011cacb000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e221d678> (a java.util.concurrent.SynchronousQueue$TransferStack)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
 at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)
 at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"ApplicationImpl pooled thread 7" prio=5 tid=0x00007fb60ed75000 nid=0x13053 waiting on condition [0x000000011c9c8000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e221d678> (a java.util.concurrent.SynchronousQueue$TransferStack)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
 at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)
 at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"ApplicationImpl pooled thread 6" prio=5 tid=0x00007fb60cebd800 nid=0x10113 waiting on condition [0x0000000119bfd000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e221d678> (a java.util.concurrent.SynchronousQueue$TransferStack)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
 at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)
 at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"TimerQueue" daemon prio=5 tid=0x00007fb60ec55800 nid=0x12b03 waiting on condition [0x00000001289d2000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e3627458> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
 at java.util.concurrent.DelayQueue.take(DelayQueue.java:220)
 at javax.swing.TimerQueue.run(TimerQueue.java:171)
 at java.lang.Thread.run(Thread.java:745)

"Animations" daemon prio=5 tid=0x00007fb60e8b9800 nid=0x12907 waiting on condition [0x0000000128436000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e187fbf0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1079)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"Alarm pool(shared)" daemon prio=5 tid=0x00007fb60c350800 nid=0x12417 waiting on condition [0x0000000120cb1000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e2165978> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
 at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"Document commit thread" prio=5 tid=0x00007fb60ce3c000 nid=0x11c03 in Object.wait() [0x000000012079a000]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 at com.intellij.psi.impl.DocumentCommitThread.pollQueue(DocumentCommitThread.java:315)
 - locked <0x00000007e193bcb8> (a com.intellij.util.containers.Queue)
 at com.intellij.psi.impl.DocumentCommitThread.run(DocumentCommitThread.java:291)
 at java.lang.Thread.run(Thread.java:745)

"ApplicationImpl pooled thread 5" prio=5 tid=0x00007fb60e6c3000 nid=0x11a03 runnable [0x0000000120313000]
   java.lang.Thread.State: RUNNABLE
 at sun.nio.ch.KQueueArrayWrapper.kevent0(Native Method)
 at sun.nio.ch.KQueueArrayWrapper.poll(KQueueArrayWrapper.java:200)
 at sun.nio.ch.KQueueSelectorImpl.doSelect(KQueueSelectorImpl.java:103)
 at sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:87)
 - locked <0x00000007e29dc2d0> (a io.netty.channel.nio.SelectedSelectionKeySet)
 - locked <0x00000007e2a1fd40> (a java.util.Collections$UnmodifiableSet)
 - locked <0x00000007e29dc220> (a sun.nio.ch.KQueueSelectorImpl)
 at sun.nio.ch.SelectorImpl.select(SelectorImpl.java:98)
 at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:621)
 at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:309)
 at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:834)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"FocusManager timer" daemon prio=5 tid=0x00007fb60c5f7800 nid=0x11803 in Object.wait() [0x000000011ff0f000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 at java.lang.Object.wait(Object.java:503)
 at java.util.TimerThread.mainLoop(Timer.java:526)
 - locked <0x00000007e19463e8> (a java.util.TaskQueue)
 at java.util.TimerThread.run(Timer.java:505)

"Shared SimpleTimer" daemon prio=5 tid=0x00007fb60e726800 nid=0x11607 in Object.wait() [0x000000011f2fe000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 at java.lang.Object.wait(Object.java:503)
 at java.util.TimerThread.mainLoop(Timer.java:526)
 - locked <0x00000007e1ba80e0> (a java.util.TaskQueue)
 at java.util.TimerThread.run(Timer.java:505)

"Performance watcher" prio=5 tid=0x00007fb60eb9f000 nid=0x11303 waiting on condition [0x000000012184a000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e0afc2d0> (a java.util.concurrent.Semaphore$NonfairSync)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedNanos(AbstractQueuedSynchronizer.java:1033)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer.tryAcquireSharedNanos(AbstractQueuedSynchronizer.java:1326)
 at java.util.concurrent.Semaphore.tryAcquire(Semaphore.java:414)
 at com.intellij.diagnostic.PerformanceWatcher.checkEDTResponsiveness(PerformanceWatcher.java:164)
 at com.intellij.diagnostic.PerformanceWatcher.access$100(PerformanceWatcher.java:41)
 at com.intellij.diagnostic.PerformanceWatcher$2.run(PerformanceWatcher.java:117)
 at java.lang.Thread.run(Thread.java:745)

"ApplicationImpl pooled thread 4" prio=5 tid=0x00007fb60c5fb000 nid=0x11103 waiting on condition [0x0000000121747000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e221d678> (a java.util.concurrent.SynchronousQueue$TransferStack)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
 at java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:359)
 at java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:942)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"StoreRefreshStatusThread" daemon prio=5 tid=0x00007fb60cb27000 nid=0x10f03 waiting on condition [0x0000000121644000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
 at java.lang.Thread.sleep(Native Method)
 at com.intellij.util.TimeoutUtil.sleep(TimeoutUtil.java:58)
 at com.intellij.openapi.vfs.impl.local.LocalFileSystemImpl$StoreRefreshStatusThread.run(LocalFileSystemImpl.java:354)

"ApplicationImpl pooled thread 3" prio=5 tid=0x00007fb60eb9c000 nid=0x10d03 waiting on condition [0x0000000121541000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
 at java.lang.Thread.sleep(Native Method)
 at com.intellij.util.TimeoutUtil.sleep(TimeoutUtil.java:58)
 at com.intellij.util.io.BaseDataReader.doRun(BaseDataReader.java:115)
 at com.intellij.util.io.BaseDataReader$1.run(BaseDataReader.java:46)
 at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:405)
 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
 at java.util.concurrent.FutureTask.run(FutureTask.java:262)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"ApplicationImpl pooled thread 2" prio=5 tid=0x00007fb60ed55800 nid=0x10b03 waiting on condition [0x000000012143e000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
 at java.lang.Thread.sleep(Native Method)
 at com.intellij.util.TimeoutUtil.sleep(TimeoutUtil.java:58)
 at com.intellij.util.io.BaseDataReader.doRun(BaseDataReader.java:115)
 at com.intellij.util.io.BaseDataReader$1.run(BaseDataReader.java:46)
 at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:405)
 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
 at java.util.concurrent.FutureTask.run(FutureTask.java:262)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"ApplicationImpl pooled thread 1" prio=5 tid=0x00007fb60e47b000 nid=0x10903 in Object.wait() [0x00000001200e4000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000007e2cc4b20> (a java.lang.UNIXProcess)
 at java.lang.Object.wait(Object.java:503)
 at java.lang.UNIXProcess.waitFor(UNIXProcess.java:261)
 - locked <0x00000007e2cc4b20> (a java.lang.UNIXProcess)
 at com.intellij.execution.process.ProcessWaitFor$1.run(ProcessWaitFor.java:30)
 at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:405)
 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
 at java.util.concurrent.FutureTask.run(FutureTask.java:262)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)
 at org.jetbrains.ide.PooledThreadExecutor$1$1.run(PooledThreadExecutor.java:56)

"Flushing thread" daemon prio=5 tid=0x00007fb60e4b7800 nid=0x1072b waiting on condition [0x000000011f838000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e0b92260> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"ZipFileCache Dispose" daemon prio=5 tid=0x00007fb60ca46000 nid=0x10547 waiting on condition [0x000000011eb6a000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e0ba35c8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"Periodic tasks thread" daemon prio=5 tid=0x00007fb60c966000 nid=0xd613 waiting on condition [0x00000001184ac000]
   java.lang.Thread.State: TIMED_WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007e1aee680> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
 at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
 at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090)
 at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807)
 at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"AWT-EventQueue-0 14.1#IC-141.177.4, eap:false" prio=5 tid=0x00007fb60e9f2800 nid=0xed13 in Object.wait() [0x0000000118b00000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 at java.lang.Object.wait(Object.java:503)
 at sun.java2d.opengl.OGLRenderQueue$QueueFlusher.flushNow(OGLRenderQueue.java:179)
 - locked <0x00000007e213b9b0> (a sun.java2d.opengl.OGLRenderQueue$QueueFlusher)
 at sun.java2d.opengl.OGLRenderQueue.flushNow(OGLRenderQueue.java:127)
 at sun.java2d.opengl.OGLBlitLoops.Blit(OGLBlitLoops.java:283)
 at sun.java2d.opengl.OGLSwToSurfaceBlit.Blit(OGLBlitLoops.java:567)
 at sun.java2d.opengl.OGLGeneralBlit.Blit(OGLBlitLoops.java:760)
 - locked <0x00000007e0bce298> (a sun.java2d.opengl.OGLGeneralBlit)
 at sun.java2d.pipe.AlphaPaintPipe.renderPathTile(AlphaPaintPipe.java:156)
 at sun.java2d.pipe.AAShapePipe.renderTiles(AAShapePipe.java:201)
 at sun.java2d.pipe.AAShapePipe.fillParallelogram(AAShapePipe.java:102)
 at sun.java2d.pipe.PixelToParallelogramConverter.fillRectangle(PixelToParallelogramConverter.java:322)
 at sun.java2d.pipe.PixelToParallelogramConverter.fillRect(PixelToParallelogramConverter.java:115)
 at sun.java2d.SunGraphics2D.fillRect(SunGraphics2D.java:2364)
 at com.intellij.openapi.editor.impl.EditorImpl.paintBackgrounds(EditorImpl.java:2420)
 at com.intellij.openapi.editor.impl.EditorImpl.paint(EditorImpl.java:2046)
 at com.intellij.openapi.editor.impl.EditorComponentImpl.paintComponent(EditorComponentImpl.java:162)
 at javax.swing.JComponent.paint(JComponent.java:1054)
 at com.intellij.openapi.editor.impl.EditorComponentImpl.paint(EditorComponentImpl.java:74)
 at javax.swing.JComponent.paintChildren(JComponent.java:887)
 - locked <0x00000007e0b09ed8> (a java.awt.Component$AWTTreeLock)
 at javax.swing.JComponent.paint(JComponent.java:1063)
 at javax.swing.JViewport.paint(JViewport.java:731)
 at com.intellij.ui.components.JBViewport.paint(JBViewport.java:122)
 at javax.swing.JComponent.paintChildren(JComponent.java:887)
 - locked <0x00000007e0b09ed8> (a java.awt.Component$AWTTreeLock)
 at javax.swing.JComponent.paint(JComponent.java:1063)
 at javax.swing.JComponent.paintToOffscreen(JComponent.java:5219)
 at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1529)
 at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1452)
 at javax.swing.RepaintManager.paint(RepaintManager.java:1249)
 at javax.swing.JComponent._paintImmediately(JComponent.java:5167)
 at javax.swing.JComponent.paintImmediately(JComponent.java:4978)
 at javax.swing.RepaintManager$3.run(RepaintManager.java:808)
 at javax.swing.RepaintManager$3.run(RepaintManager.java:796)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
 at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:796)
 at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:769)
 at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:718)
 at javax.swing.RepaintManager.access$1100(RepaintManager.java:62)
 at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1677)
 at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
 at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
 at java.awt.EventQueue.access$200(EventQueue.java:103)
 at java.awt.EventQueue$3.run(EventQueue.java:694)
 at java.awt.EventQueue$3.run(EventQueue.java:692)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
 at java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
 at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:734)
 at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:569)
 at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:382)
 at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
 at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
 at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
 at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
 at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
 at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

"AWT-Shutdown" prio=5 tid=0x00007fb60e900800 nid=0x7c0b in Object.wait() [0x0000000114ae7000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000007e218c998> (a java.lang.Object)
 at java.lang.Object.wait(Object.java:503)
 at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:296)
 - locked <0x00000007e218c998> (a java.lang.Object)
 at java.lang.Thread.run(Thread.java:745)

"process reaper" daemon prio=5 tid=0x00007fb60c93f800 nid=0xee03 runnable [0x000000011871e000]
   java.lang.Thread.State: RUNNABLE
 at java.lang.UNIXProcess.waitForProcessExit(Native Method)
 at java.lang.UNIXProcess.access$500(UNIXProcess.java:54)
 at java.lang.UNIXProcess$4.run(UNIXProcess.java:225)
 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
 at java.lang.Thread.run(Thread.java:745)

"Lock thread" prio=5 tid=0x00007fb60e9bf000 nid=0xd803 runnable [0x00000001185af000]
   java.lang.Thread.State: RUNNABLE
 at java.net.PlainSocketImpl.socketAccept(Native Method)
 at java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:398)
 at java.net.ServerSocket.implAccept(ServerSocket.java:530)
 at java.net.ServerSocket.accept(ServerSocket.java:498)
 at com.intellij.idea.SocketLock$MyRunnable.run(SocketLock.java:224)
 at java.lang.Thread.run(Thread.java:745)

"DestroyJavaVM" prio=5 tid=0x00007fb610010800 nid=0x1303 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Java2D Disposer" daemon prio=5 tid=0x00007fb61000e000 nid=0xd517 in Object.wait() [0x0000000118395000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000007e202eef0> (a java.lang.ref.ReferenceQueue$Lock)
 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)
 - locked <0x00000007e202eef0> (a java.lang.ref.ReferenceQueue$Lock)
 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)
 at sun.java2d.Disposer.run(Disposer.java:145)
 at java.lang.Thread.run(Thread.java:745)

"Java2D Queue Flusher" daemon prio=5 tid=0x00007fb60e157800 nid=0xcf07 runnable [0x0000000117a0a000]
   java.lang.Thread.State: RUNNABLE
 at sun.java2d.opengl.OGLRenderQueue.flushBuffer(Native Method)
 at sun.java2d.opengl.OGLRenderQueue.flushBuffer(OGLRenderQueue.java:151)
 at sun.java2d.opengl.OGLRenderQueue.access$100(OGLRenderQueue.java:41)
 at sun.java2d.opengl.OGLRenderQueue$QueueFlusher.run(OGLRenderQueue.java:229)
 - locked <0x00000007e213b9b0> (a sun.java2d.opengl.OGLRenderQueue$QueueFlusher)

"AWT-AppKit" daemon prio=5 tid=0x00007fb60c0de000 nid=0x513 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Service Thread" daemon prio=5 tid=0x00007fb610002000 nid=0x5303 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" daemon prio=5 tid=0x00007fb60e025000 nid=0x5103 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" daemon prio=5 tid=0x00007fb60e023800 nid=0x4f03 waiting on condition [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"JDWP Command Reader" daemon prio=5 tid=0x00007fb60c03e800 nid=0x4d03 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"JDWP Event Helper Thread" daemon prio=5 tid=0x00007fb60c03e000 nid=0x4b03 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"JDWP Transport Listener: dt_socket" daemon prio=5 tid=0x00007fb60c03d000 nid=0x4903 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=5 tid=0x00007fb60e805000 nid=0x3c13 runnable [0x0000000000000000]
   java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=5 tid=0x00007fb60c838800 nid=0x3503 in Object.wait() [0x0000000110824000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000007e0846d60> (a java.lang.ref.ReferenceQueue$Lock)
 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135)
 - locked <0x00000007e0846d60> (a java.lang.ref.ReferenceQueue$Lock)
 at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151)
 at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

"Reference Handler" daemon prio=5 tid=0x00007fb60f000000 nid=0x3303 in Object.wait() [0x0000000110721000]
   java.lang.Thread.State: WAITING (on object monitor)
 at java.lang.Object.wait(Native Method)
 - waiting on <0x00000007e0b59918> (a java.lang.ref.Reference$Lock)
 at java.lang.Object.wait(Object.java:503)
 at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133)
 - locked <0x00000007e0b59918> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=5 tid=0x00007fb60c036800 nid=0x3103 runnable

"GC task thread#0 (ParallelGC)" prio=5 tid=0x00007fb60c02b000 nid=0x2103 runnable

"GC task thread#1 (ParallelGC)" prio=5 tid=0x00007fb60c02c000 nid=0x2303 runnable

"GC task thread#2 (ParallelGC)" prio=5 tid=0x00007fb60e800000 nid=0x2503 runnable

"GC task thread#3 (ParallelGC)" prio=5 tid=0x00007fb60c02c800 nid=0x2703 runnable

"GC task thread#4 (ParallelGC)" prio=5 tid=0x00007fb60c02d000 nid=0x2903 runnable

"GC task thread#5 (ParallelGC)" prio=5 tid=0x00007fb60c02d800 nid=0x2b03 runnable

"GC task thread#6 (ParallelGC)" prio=5 tid=0x00007fb60c02e800 nid=0x2d03 runnable

"GC task thread#7 (ParallelGC)" prio=5 tid=0x00007fb60c806000 nid=0x2f03 runnable

"VM Periodic Task Thread" prio=5 tid=0x00007fb60c039000 nid=0x5503 waiting on condition

JNI global references: 62141

0
Comment actions Permalink

On the first glance, this looks like a JDK issue to me. The hang happens in the OpenGL pipeline; maybe a suitable workaround would be to switch java2d to a different rendering pipeline.

0
Comment actions Permalink

On our end I've just removed the alpha transparency and that worked for us. I just wanted to alert you guys to the issue. Thank you for all the quick replies!

0

Please sign in to leave a comment.