Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8128530

Ensemble on Mac locks up in "Mouse Events" sample.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Cannot Reproduce
    • Icon: P4 P4
    • 8
    • fx2.0.2
    • javafx
    • None

      While trying to reproduce RT-17841 I discovered that I can easily and consistently lock up Ensemble on Mac using "Mouse Events" sample.

      The sample starts lagging after about 30 seconds of vigorously moving mouse around, then shortly afterwards locks up.

      Looks like "JavaFX Application Thread" thread gets stuck at java.util.HashMap.addEntry(HashMap.java:753):


      "Executing pss"
      2011-11-14 15:32:36
      Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.4-b02-402 mixed mode):

      "Disposer" daemon prio=10 tid=7fce65906800 nid=0x127712000 in Object.wait() [127711000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      - waiting on <7f56c01d0> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
      - locked <7f56c01d0> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
      at com.sun.webpane.platform.Disposer.run(Disposer.java:65)
      at java.lang.Thread.run(Thread.java:680)

      "Prism Font Disposer" daemon prio=10 tid=7fce65bb1000 nid=0x123a73000 in Object.wait() [123a72000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      - waiting on <7f4673940> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
      - locked <7f4673940> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
      at com.sun.t2k.Disposer.run(Disposer.java:71)
      at java.lang.Thread.run(Thread.java:680)

      "Glass Timer Thread" daemon prio=9 tid=7fce66053800 nid=0x122147000 runnable [00000000]
         java.lang.Thread.State: RUNNABLE

      "JavaFX Application Thread" prio=5 tid=7fce66800000 nid=0x7fff7e23d960 waiting on condition [7fff663fe000]
         java.lang.Thread.State: RUNNABLE
      at java.util.HashMap.addEntry(HashMap.java:753)
      at java.util.HashMap.put(HashMap.java:385)
      at com.sun.javafx.css.StyleHelper.<init>(StyleHelper.java:397)
      at com.sun.javafx.css.StyleHelper.create(StyleHelper.java:70)
      at com.sun.javafx.css.StyleManager$Cache.lookup(StyleManager.java:1078)
      at com.sun.javafx.css.StyleManager$Cache.access$1300(StyleManager.java:996)
      at com.sun.javafx.css.StyleManager$StylesheetContainer.getStyleHelper(StyleManager.java:928)
      at com.sun.javafx.css.StyleManager$StylesheetContainer.access$900(StyleManager.java:695)
      at com.sun.javafx.css.StyleManager.getStyleHelper(StyleManager.java:624)
      at javafx.scene.Node.impl_createStyleHelper(Node.java:6343)
      at javafx.scene.Node.impl_getStyleHelper(Node.java:6366)
      at com.sun.javafx.css.StyleHelper.inherit(StyleHelper.java:1040)
      at com.sun.javafx.css.StyleHelper.handleNoStyleFound(StyleHelper.java:992)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:861)
      at com.sun.javafx.css.StyleHelper.inherit(StyleHelper.java:1051)
      at com.sun.javafx.css.StyleHelper.handleNoStyleFound(StyleHelper.java:992)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:861)
      at com.sun.javafx.css.StyleHelper.inherit(StyleHelper.java:1051)
      at com.sun.javafx.css.StyleHelper.handleNoStyleFound(StyleHelper.java:992)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:861)
      at com.sun.javafx.css.StyleHelper.inherit(StyleHelper.java:1051)
      at com.sun.javafx.css.StyleHelper.handleNoStyleFound(StyleHelper.java:992)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:861)
      at com.sun.javafx.css.StyleHelper.inherit(StyleHelper.java:1051)
      at com.sun.javafx.css.StyleHelper.handleNoStyleFound(StyleHelper.java:992)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:861)
      at com.sun.javafx.css.StyleHelper.inherit(StyleHelper.java:1051)
      at com.sun.javafx.css.StyleHelper.handleNoStyleFound(StyleHelper.java:992)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:861)
      at com.sun.javafx.css.StyleHelper.inherit(StyleHelper.java:1051)
      at com.sun.javafx.css.StyleHelper.handleNoStyleFound(StyleHelper.java:992)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:861)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:898)
      at com.sun.javafx.css.StyleHelper.inherit(StyleHelper.java:1051)
      at com.sun.javafx.css.StyleHelper.handleNoStyleFound(StyleHelper.java:992)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:908)
      at com.sun.javafx.css.StyleHelper.inherit(StyleHelper.java:1051)
      at com.sun.javafx.css.StyleHelper.handleNoStyleFound(StyleHelper.java:992)
      at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:908)
      at com.sun.javafx.css.StyleHelper.transitionToState(StyleHelper.java:730)
      at javafx.scene.Node.impl_processCSS(Node.java:6323)
      at javafx.scene.Parent.impl_processCSS(Parent.java:965)
      at javafx.scene.control.Control.impl_processCSS(Control.java:1033)
      at com.sun.javafx.scene.control.skin.VirtualFlow.setCellIndex(VirtualFlow.java:1437)
      at com.sun.javafx.scene.control.skin.VirtualFlow.addTrailingCells(VirtualFlow.java:996)
      at com.sun.javafx.scene.control.skin.VirtualFlow.layoutChildren(VirtualFlow.java:889)
      at com.sun.javafx.scene.control.skin.VirtualFlow.setCellCount(VirtualFlow.java:201)
      at com.sun.javafx.scene.control.skin.ListViewSkin.updateCellCount(ListViewSkin.java:182)
      at com.sun.javafx.scene.control.skin.ListViewSkin.layoutChildren(ListViewSkin.java:248)
      at javafx.scene.Parent.layout(Parent.java:900)
      at javafx.scene.Parent.layout(Parent.java:910)
      at javafx.scene.Parent.layout(Parent.java:910)
      at javafx.scene.Parent.layout(Parent.java:910)
      at javafx.scene.Parent.layout(Parent.java:910)
      at javafx.scene.Parent.layout(Parent.java:910)
      at javafx.scene.Parent.layout(Parent.java:910)
      at javafx.scene.Scene.layoutDirtyRoots(Scene.java:454)
      at javafx.scene.Scene.doLayoutPass(Scene.java:427)
      at javafx.scene.Scene.access$3000(Scene.java:132)
      at javafx.scene.Scene$ScenePulseListener.pulse(Scene.java:1796)
      at com.sun.javafx.tk.Toolkit.firePulse(Toolkit.java:290)
      at com.sun.javafx.tk.quantum.QuantumToolkit.pulse(QuantumToolkit.java:384)
      at com.sun.javafx.tk.quantum.QuantumToolkit$8.run(QuantumToolkit.java:310)

      "Disposer" daemon prio=10 tid=7fce6218f000 nid=0x121e8d000 in Object.wait() [121e8c000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      - waiting on <7f44f1fc0> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
      - locked <7f44f1fc0> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
      at com.sun.glass.utils.Disposer.run(Disposer.java:69)
      at java.lang.Thread.run(Thread.java:680)

      "QuantumRenderer-0" daemon prio=5 tid=7fce658ee000 nid=0x110094000 waiting on condition [110093000]
         java.lang.Thread.State: WAITING (parking)
      at sun.misc.Unsafe.park(Native Method)
      - parking to wait for <7f44f5d98> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
      at java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987)
      at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:399)
      at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:947)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
      at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:101)
      at java.lang.Thread.run(Thread.java:680)

      "JavaFX-Launcher" prio=5 tid=7fce658d7800 nid=0x10ff91000 waiting on condition [10ff90000]
         java.lang.Thread.State: WAITING (parking)
      at sun.misc.Unsafe.park(Native Method)
      - parking to wait for <7f47df220> (a java.util.concurrent.CountDownLatch$Sync)
      at java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:811)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:969)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1281)
      at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:207)
      at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:310)
      at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:28)
      at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:98)
      at java.lang.Thread.run(Thread.java:680)

      "Low Memory Detector" daemon prio=5 tid=7fce6580b800 nid=0x10f791000 runnable [00000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread1" daemon prio=9 tid=7fce6580a800 nid=0x10f68e000 waiting on condition [00000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread0" daemon prio=9 tid=7fce6580a000 nid=0x10f58b000 waiting on condition [00000000]
         java.lang.Thread.State: RUNNABLE

      "Signal Dispatcher" daemon prio=9 tid=7fce65809000 nid=0x10f488000 runnable [00000000]
         java.lang.Thread.State: RUNNABLE

      "Surrogate Locker Thread (Concurrent GC)" daemon prio=5 tid=7fce65808000 nid=0x10f385000 waiting on condition [00000000]
         java.lang.Thread.State: RUNNABLE

      "Finalizer" daemon prio=8 tid=7fce6393f000 nid=0x10f0c1000 in Object.wait() [10f0c0000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      - waiting on <7f45a9e90> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
      - locked <7f45a9e90> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
      at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

      "Reference Handler" daemon prio=10 tid=7fce6393e000 nid=0x10efbe000 in Object.wait() [10efbd000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      - waiting on <7f46315d8> (a java.lang.ref.Reference$Lock)
      at java.lang.Object.wait(Object.java:485)
      at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
      - locked <7f46315d8> (a java.lang.ref.Reference$Lock)

      "main" prio=5 tid=7fce63800800 nid=0x1071ff000 waiting on condition [1071fd000]
         java.lang.Thread.State: WAITING (parking)
      at sun.misc.Unsafe.park(Native Method)
      - parking to wait for <7f44d3258> (a java.util.concurrent.CountDownLatch$Sync)
      at java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:811)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:969)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1281)
      at java.util.concurrent.CountDownLatch.await(CountDownLatch.java:207)
      at com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:117)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at com.javafx.main.Main.launchApp(Main.java:453)
      at com.javafx.main.Main.main(Main.java:537)

      "VM Thread" prio=9 tid=7fce63939800 nid=0x10eebb000 runnable

      "Gang worker#0 (Parallel GC Threads)" prio=9 tid=7fce63802000 nid=0x10a50f000 runnable

      "Gang worker#1 (Parallel GC Threads)" prio=9 tid=7fce63802800 nid=0x10a612000 runnable

      "Gang worker#2 (Parallel GC Threads)" prio=9 tid=7fce63803000 nid=0x10a715000 runnable

      "Gang worker#3 (Parallel GC Threads)" prio=9 tid=7fce63804000 nid=0x10a818000 runnable

      "Gang worker#4 (Parallel GC Threads)" prio=9 tid=7fce63804800 nid=0x10a91b000 runnable

      "Gang worker#5 (Parallel GC Threads)" prio=9 tid=7fce63805000 nid=0x10aa1e000 runnable

      "Gang worker#6 (Parallel GC Threads)" prio=9 tid=7fce63805800 nid=0x10ab21000 runnable

      "Gang worker#7 (Parallel GC Threads)" prio=9 tid=7fce63806800 nid=0x10ac24000 runnable

      "Concurrent Mark-Sweep GC Thread" prio=9 tid=7fce638e3800 nid=0x10eaf0000 runnable
      "Gang worker#0 (Parallel CMS Threads)" prio=9 tid=7fce638e2800 nid=0x10e0ea000 runnable

      "Gang worker#1 (Parallel CMS Threads)" prio=9 tid=7fce638e3000 nid=0x10e1ed000 runnable

      "VM Periodic Task Thread" prio=10 tid=7fce65815000 nid=0x10f894000 waiting on condition

      "Exception Catcher Thread" prio=10 tid=7fce63801800 nid=0x107336000 runnable

            dgrieve David Grieve
            gziemski Gerard Ziemski
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported: