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

UI stuck when calling JEditorPane.setText() or JTextArea.setText() with long text without space

    Details

      Description

      FULL PRODUCT VERSION :
      java version "1.8.0_112"
      Java(TM) SE Runtime Environment (build 1.8.0_112-b16)
      Java HotSpot(TM) 64-Bit Server VM (build 25.112-b16, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      Mac OSX El Capitan 10.11.6
      Update:
      Reproducible on multiple Windows, Linux and MacOS.

      A DESCRIPTION OF THE PROBLEM :
      On project Apache JMeter we have UI components that use JEditorPane.
      We noticed that when we display some long text without space (issue huge with 700 000 characters) the UI get stack.
      Making thread dumps, we always see this stacktrace part involved:
      Calling javax.swing.JEditorPane.setText() from AWT Thread with some long text (without spaces) leads to what seems to be either a very long or infinite loop, I made thread dumps and I have always such (partial) stacktrace:
      "AWT-EventQueue-0" #20 prio=6 os_prio=31 tid=0x00007fa7a8afc000 nid=0xf707 runnable [0x0000700002202000]
         java.lang.Thread.State: RUNNABLE
          at sun.font.CStrike.getNativeGlyphOutline(Native Method)
          at sun.font.CStrike.getGlyphOutline(CStrike.java:215)
          at sun.font.CStrike.getGlyphOutlineBounds(CStrike.java:177)
          at sun.font.StandardGlyphVector$GlyphStrike.getGlyphOutlineBounds(StandardGlyphVector.java:1792)
          at sun.font.StandardGlyphVector.getGlyphOutlineBounds(StandardGlyphVector.java:1174)
          at sun.font.StandardGlyphVector.getGlyphVisualBounds(StandardGlyphVector.java:586)
          at sun.font.StandardGlyphVector.getGlyphInfo(StandardGlyphVector.java:864)
          at sun.font.ExtendedTextSourceLabel.createCharinfo(ExtendedTextSourceLabel.java:622)
          at sun.font.ExtendedTextSourceLabel.getCharinfo(ExtendedTextSourceLabel.java:548)
          at sun.font.ExtendedTextSourceLabel.getLineBreakIndex(ExtendedTextSourceLabel.java:480)
          at java.awt.font.TextMeasurer.calcLineBreak(TextMeasurer.java:330)
          at java.awt.font.TextMeasurer.getLineBreakIndex(TextMeasurer.java:566)
          at java.awt.font.LineBreakMeasurer.nextOffset(LineBreakMeasurer.java:359)
          at java.awt.font.LineBreakMeasurer.nextLayout(LineBreakMeasurer.java:440)
          at javax.swing.text.TextLayoutStrategy.sync(TextLayoutStrategy.java:324)
          at javax.swing.text.TextLayoutStrategy.insertUpdate(TextLayoutStrategy.java:70)
          at javax.swing.text.FlowView.insertUpdate(FlowView.java:256)
          at javax.swing.text.View.forwardUpdateToView(View.java:1227)
          at javax.swing.text.View.forwardUpdate(View.java:1162)
          at javax.swing.text.BoxView.forwardUpdate(BoxView.java:240)
          at javax.swing.text.View.insertUpdate(View.java:710)
          at javax.swing.plaf.basic.BasicTextUI$RootView.insertUpdate(BasicTextUI.java:1610)
          at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.insertUpdate(BasicTextUI.java:1869)
          at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:201)
          at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:748)
          at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:707)
          at javax.swing.text.PlainDocument.insertString(PlainDocument.java:130)
          at javax.swing.text.DefaultEditorKit.read(DefaultEditorKit.java:273)
          at javax.swing.JEditorPane.setText(JEditorPane.java:1416)
      ....

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Display editor pane after few seconds (2/3)
      ACTUAL -
      UI stuck either for 3 minutes or never gives back.

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      No crash message.
      See stack traces , in this case we had to restart JVM.

      2017-01-05 10:38:23
      Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.112-b16 mixed mode):

      "NanoOffset" #30 daemon prio=6 os_prio=31 tid=0x00007fa7b70f7800 nid=0x1206f waiting on condition [0x00007000024b9000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
      at java.lang.Thread.sleep(Native Method)
      at java.lang.Thread.sleep(Thread.java:340)
      at java.util.concurrent.TimeUnit.sleep(TimeUnit.java:386)
      at org.apache.jmeter.samplers.SampleResult$NanoOffset.getOffset(SampleResult.java:1472)
      at org.apache.jmeter.samplers.SampleResult$NanoOffset.run(SampleResult.java:1465)

      "DestroyJavaVM" #22 prio=5 os_prio=31 tid=0x00007fa7ac3af000 nid=0x1703 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "TimerQueue" #21 daemon prio=5 os_prio=31 tid=0x00007fa7b15f2000 nid=0x1131b waiting on condition [0x000070000238b000]
         java.lang.Thread.State: WAITING (parking)
      at sun.misc.Unsafe.park(Native Method)
      - parking to wait for <0x00000007804f86d0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
      at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
      at java.util.concurrent.DelayQueue.take(DelayQueue.java:211)
      at javax.swing.TimerQueue.run(TimerQueue.java:174)
      at java.lang.Thread.run(Thread.java:745)

      "AWT-EventQueue-0" #20 prio=6 os_prio=31 tid=0x00007fa7a8afc000 nid=0xf707 runnable [0x0000700002202000]
         java.lang.Thread.State: RUNNABLE
      at sun.font.CStrike.getNativeGlyphOutline(Native Method)
      at sun.font.CStrike.getGlyphOutline(CStrike.java:215)
      at sun.font.CStrike.getGlyphOutlineBounds(CStrike.java:177)
      at sun.font.StandardGlyphVector$GlyphStrike.getGlyphOutlineBounds(StandardGlyphVector.java:1792)
      at sun.font.StandardGlyphVector.getGlyphOutlineBounds(StandardGlyphVector.java:1174)
      at sun.font.StandardGlyphVector.getGlyphVisualBounds(StandardGlyphVector.java:586)
      at sun.font.StandardGlyphVector.getGlyphInfo(StandardGlyphVector.java:864)
      at sun.font.ExtendedTextSourceLabel.createCharinfo(ExtendedTextSourceLabel.java:622)
      at sun.font.ExtendedTextSourceLabel.getCharinfo(ExtendedTextSourceLabel.java:548)
      at sun.font.ExtendedTextSourceLabel.getLineBreakIndex(ExtendedTextSourceLabel.java:480)
      at java.awt.font.TextMeasurer.calcLineBreak(TextMeasurer.java:330)
      at java.awt.font.TextMeasurer.getLineBreakIndex(TextMeasurer.java:566)
      at java.awt.font.LineBreakMeasurer.nextOffset(LineBreakMeasurer.java:359)
      at java.awt.font.LineBreakMeasurer.nextLayout(LineBreakMeasurer.java:440)
      at javax.swing.text.TextLayoutStrategy.sync(TextLayoutStrategy.java:324)
      at javax.swing.text.TextLayoutStrategy.insertUpdate(TextLayoutStrategy.java:70)
      at javax.swing.text.FlowView.insertUpdate(FlowView.java:256)
      at javax.swing.text.View.forwardUpdateToView(View.java:1227)
      at javax.swing.text.View.forwardUpdate(View.java:1162)
      at javax.swing.text.BoxView.forwardUpdate(BoxView.java:240)
      at javax.swing.text.View.insertUpdate(View.java:710)
      at javax.swing.plaf.basic.BasicTextUI$RootView.insertUpdate(BasicTextUI.java:1610)
      at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.insertUpdate(BasicTextUI.java:1869)
      at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:201)
      at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:748)
      at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:707)
      at javax.swing.text.PlainDocument.insertString(PlainDocument.java:130)
      at javax.swing.text.DefaultEditorKit.read(DefaultEditorKit.java:273)
      at javax.swing.JEditorPane.setText(JEditorPane.java:1416)
      at org.apache.jmeter.visualizers.RenderAsText.showTextResponse(RenderAsText.java:36)
      at org.apache.jmeter.visualizers.RenderAsText.renderResult(RenderAsText.java:31)
      at org.apache.jmeter.visualizers.ViewResultsFullVisualizer.valueChanged(ViewResultsFullVisualizer.java:270)
      at javax.swing.JTree.fireValueChanged(JTree.java:2927)
      at javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:3391)
      at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:635)
      at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1093)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:294)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(DefaultTreeSelectionModel.java:188)
      at javax.swing.JTree.setSelectionPath(JTree.java:1634)
      at javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(BasicTreeUI.java:2393)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(BasicTreeUI.java:3609)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(BasicTreeUI.java:3548)
      at java.awt.Component.processMouseEvent(Component.java:6530)
      at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
      at java.awt.Component.processEvent(Component.java:6298)
      at java.awt.Container.processEvent(Container.java:2236)
      at java.awt.Component.dispatchEventImpl(Component.java:4889)
      at java.awt.Container.dispatchEventImpl(Container.java:2294)
      at java.awt.Component.dispatchEvent(Component.java:4711)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
      at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4522)
      at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
      at java.awt.Container.dispatchEventImpl(Container.java:2280)
      at java.awt.Window.dispatchEventImpl(Window.java:2746)
      at java.awt.Component.dispatchEvent(Component.java:4711)
      at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
      at java.awt.EventQueue.access$500(EventQueue.java:97)
      at java.awt.EventQueue$3.run(EventQueue.java:709)
      at java.awt.EventQueue$3.run(EventQueue.java:703)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
      at java.awt.EventQueue$4.run(EventQueue.java:731)
      at java.awt.EventQueue$4.run(EventQueue.java:729)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
      at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
      at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
      at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

      "Java2D Disposer" #18 daemon prio=10 os_prio=31 tid=0x00007fa7a99b5000 nid=0xdd13 in Object.wait() [0x0000700001fff000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
      - locked <0x0000000780011b40> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
      at sun.java2d.Disposer.run(Disposer.java:148)
      at java.lang.Thread.run(Thread.java:745)

      "Java2D Queue Flusher" #17 daemon prio=10 os_prio=31 tid=0x00007fa7a89da800 nid=0xdb0b in Object.wait() [0x0000700001efc000]
         java.lang.Thread.State: TIMED_WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at sun.java2d.opengl.OGLRenderQueue$QueueFlusher.run(OGLRenderQueue.java:203)
      - locked <0x0000000780004a78> (a sun.java2d.opengl.OGLRenderQueue$QueueFlusher)

      "AWT-Shutdown" #16 prio=5 os_prio=31 tid=0x00007fa7a9930000 nid=0x8913 in Object.wait() [0x0000700001b6a000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:295)
      - locked <0x0000000780017b70> (a java.lang.Object)
      at java.lang.Thread.run(Thread.java:745)

      "AppKit Thread" #15 daemon prio=5 os_prio=31 tid=0x00007fa7a8977800 nid=0xa0b runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Timer-0" #13 daemon prio=5 os_prio=31 tid=0x00007fa7a8969000 nid=0x620f in Object.wait() [0x00007000019e4000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at java.util.TimerThread.mainLoop(Timer.java:526)
      - locked <0x0000000780011b80> (a java.util.TaskQueue)
      at java.util.TimerThread.run(Timer.java:505)

      "Service Thread" #12 daemon prio=9 os_prio=31 tid=0x00007fa7a981b000 nid=0x5a03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C1 CompilerThread3" #11 daemon prio=9 os_prio=31 tid=0x00007fa7a8879000 nid=0x5803 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread2" #10 daemon prio=9 os_prio=31 tid=0x00007fa7a8878000 nid=0x5603 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread1" #9 daemon prio=9 os_prio=31 tid=0x00007fa7a8877800 nid=0x5403 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread0" #8 daemon prio=9 os_prio=31 tid=0x00007fa7aa016000 nid=0x5203 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Command Reader" #7 daemon prio=10 os_prio=31 tid=0x00007fa7a8876800 nid=0x5003 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Event Helper Thread" #6 daemon prio=10 os_prio=31 tid=0x00007fa7a9811800 nid=0x4e03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Transport Listener: dt_socket" #5 daemon prio=10 os_prio=31 tid=0x00007fa7aa015000 nid=0x4c03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Signal Dispatcher" #4 daemon prio=9 os_prio=31 tid=0x00007fa7a9801000 nid=0x4913 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Finalizer" #3 daemon prio=8 os_prio=31 tid=0x00007fa7aa00f000 nid=0x3803 in Object.wait() [0x0000700000d3a000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
      - locked <0x000000078002b008> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
      at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

      "Reference Handler" #2 daemon prio=10 os_prio=31 tid=0x00007fa7aa00c800 nid=0x3603 in Object.wait() [0x0000700000c37000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
      - locked <0x0000000780023370> (a java.lang.ref.Reference$Lock)
      at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

      "VM Thread" os_prio=31 tid=0x00007fa7a8868800 nid=0x3403 runnable

      "GC task thread#0 (ParallelGC)" os_prio=31 tid=0x00007fa7aa003800 nid=0x2403 runnable

      "GC task thread#1 (ParallelGC)" os_prio=31 tid=0x00007fa7aa004000 nid=0x2603 runnable

      "GC task thread#2 (ParallelGC)" os_prio=31 tid=0x00007fa7aa004800 nid=0x2803 runnable

      "GC task thread#3 (ParallelGC)" os_prio=31 tid=0x00007fa7aa005000 nid=0x2a03 runnable

      "GC task thread#4 (ParallelGC)" os_prio=31 tid=0x00007fa7aa006000 nid=0x2c03 runnable

      "GC task thread#5 (ParallelGC)" os_prio=31 tid=0x00007fa7aa006800 nid=0x2e03 runnable

      "GC task thread#6 (ParallelGC)" os_prio=31 tid=0x00007fa7aa007000 nid=0x3003 runnable

      "GC task thread#7 (ParallelGC)" os_prio=31 tid=0x00007fa7aa007800 nid=0x3203 runnable

      "VM Periodic Task Thread" os_prio=31 tid=0x00007fa7a980e000 nid=0x5c03 waiting on condition

      JNI global references: 11590

      Heap
       PSYoungGen total 309248K, used 281531K [0x00000007aab00000, 0x00000007c0000000, 0x00000007c0000000)
        eden space 267776K, 98% used [0x00000007aab00000,0x00000007bad0be10,0x00000007bb080000)
        from space 41472K, 41% used [0x00000007bd780000,0x00000007be863198,0x00000007c0000000)
        to space 39936K, 0% used [0x00000007bb080000,0x00000007bb080000,0x00000007bd780000)
       ParOldGen total 699392K, used 102467K [0x0000000780000000, 0x00000007aab00000, 0x00000007aab00000)
        object space 699392K, 14% used [0x0000000780000000,0x0000000786410f50,0x00000007aab00000)
       Metaspace used 63263K, capacity 64266K, committed 64384K, reserved 1103872K
        class space used 8830K, capacity 9049K, committed 9088K, reserved 1048576K

      2017-01-05 10:40:04
      Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.112-b16 mixed mode):

      "NanoOffset" #30 daemon prio=6 os_prio=31 tid=0x00007fa7b70f7800 nid=0x1206f waiting on condition [0x00007000024b9000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
      at java.lang.Thread.sleep(Native Method)
      at java.lang.Thread.sleep(Thread.java:340)
      at java.util.concurrent.TimeUnit.sleep(TimeUnit.java:386)
      at org.apache.jmeter.samplers.SampleResult$NanoOffset.getOffset(SampleResult.java:1472)
      at org.apache.jmeter.samplers.SampleResult$NanoOffset.run(SampleResult.java:1465)

      "DestroyJavaVM" #22 prio=5 os_prio=31 tid=0x00007fa7ac3af000 nid=0x1703 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "TimerQueue" #21 daemon prio=5 os_prio=31 tid=0x00007fa7b15f2000 nid=0x1131b waiting on condition [0x000070000238b000]
         java.lang.Thread.State: WAITING (parking)
      at sun.misc.Unsafe.park(Native Method)
      - parking to wait for <0x00000007804f86d0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
      at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
      at java.util.concurrent.DelayQueue.take(DelayQueue.java:211)
      at javax.swing.TimerQueue.run(TimerQueue.java:174)
      at java.lang.Thread.run(Thread.java:745)

      "AWT-EventQueue-0" #20 prio=6 os_prio=31 tid=0x00007fa7a8afc000 nid=0xf707 runnable [0x0000700002202000]
         java.lang.Thread.State: RUNNABLE
      at sun.font.SunLayoutEngine.nativeLayout(Native Method)
      at sun.font.SunLayoutEngine.layout(SunLayoutEngine.java:161)
      at sun.font.GlyphLayout$EngineRecord.layout(GlyphLayout.java:682)
      at sun.font.GlyphLayout.layout(GlyphLayout.java:463)
      at sun.font.ExtendedTextSourceLabel.createGV(ExtendedTextSourceLabel.java:329)
      at sun.font.ExtendedTextSourceLabel.getGV(ExtendedTextSourceLabel.java:315)
      at sun.font.ExtendedTextSourceLabel.createCharinfo(ExtendedTextSourceLabel.java:619)
      at sun.font.ExtendedTextSourceLabel.getCharinfo(ExtendedTextSourceLabel.java:548)
      at sun.font.ExtendedTextSourceLabel.getLineBreakIndex(ExtendedTextSourceLabel.java:480)
      at java.awt.font.TextMeasurer.calcLineBreak(TextMeasurer.java:330)
      at java.awt.font.TextMeasurer.getLineBreakIndex(TextMeasurer.java:566)
      at java.awt.font.LineBreakMeasurer.nextOffset(LineBreakMeasurer.java:359)
      at java.awt.font.LineBreakMeasurer.nextLayout(LineBreakMeasurer.java:440)
      at javax.swing.text.TextLayoutStrategy.sync(TextLayoutStrategy.java:324)
      at javax.swing.text.TextLayoutStrategy.insertUpdate(TextLayoutStrategy.java:70)
      at javax.swing.text.FlowView.insertUpdate(FlowView.java:256)
      at javax.swing.text.View.forwardUpdateToView(View.java:1227)
      at javax.swing.text.View.forwardUpdate(View.java:1162)
      at javax.swing.text.BoxView.forwardUpdate(BoxView.java:240)
      at javax.swing.text.View.insertUpdate(View.java:710)
      at javax.swing.plaf.basic.BasicTextUI$RootView.insertUpdate(BasicTextUI.java:1610)
      at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.insertUpdate(BasicTextUI.java:1869)
      at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:201)
      at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:748)
      at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:707)
      at javax.swing.text.PlainDocument.insertString(PlainDocument.java:130)
      at javax.swing.text.DefaultEditorKit.read(DefaultEditorKit.java:273)
      at javax.swing.JEditorPane.setText(JEditorPane.java:1416)
      at org.apache.jmeter.visualizers.RenderAsText.showTextResponse(RenderAsText.java:36)
      at org.apache.jmeter.visualizers.RenderAsText.renderResult(RenderAsText.java:31)
      at org.apache.jmeter.visualizers.ViewResultsFullVisualizer.valueChanged(ViewResultsFullVisualizer.java:270)
      at javax.swing.JTree.fireValueChanged(JTree.java:2927)
      at javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:3391)
      at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:635)
      at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1093)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:294)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(DefaultTreeSelectionModel.java:188)
      at javax.swing.JTree.setSelectionPath(JTree.java:1634)
      at javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(BasicTreeUI.java:2393)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(BasicTreeUI.java:3609)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(BasicTreeUI.java:3548)
      at java.awt.Component.processMouseEvent(Component.java:6530)
      at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
      at java.awt.Component.processEvent(Component.java:6298)
      at java.awt.Container.processEvent(Container.java:2236)
      at java.awt.Component.dispatchEventImpl(Component.java:4889)
      at java.awt.Container.dispatchEventImpl(Container.java:2294)
      at java.awt.Component.dispatchEvent(Component.java:4711)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
      at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4522)
      at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
      at java.awt.Container.dispatchEventImpl(Container.java:2280)
      at java.awt.Window.dispatchEventImpl(Window.java:2746)
      at java.awt.Component.dispatchEvent(Component.java:4711)
      at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
      at java.awt.EventQueue.access$500(EventQueue.java:97)
      at java.awt.EventQueue$3.run(EventQueue.java:709)
      at java.awt.EventQueue$3.run(EventQueue.java:703)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
      at java.awt.EventQueue$4.run(EventQueue.java:731)
      at java.awt.EventQueue$4.run(EventQueue.java:729)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
      at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
      at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
      at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

      "Java2D Disposer" #18 daemon prio=10 os_prio=31 tid=0x00007fa7a99b5000 nid=0xdd13 in Object.wait() [0x0000700001fff000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
      - locked <0x0000000780011b40> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
      at sun.java2d.Disposer.run(Disposer.java:148)
      at java.lang.Thread.run(Thread.java:745)

      "Java2D Queue Flusher" #17 daemon prio=10 os_prio=31 tid=0x00007fa7a89da800 nid=0xdb0b in Object.wait() [0x0000700001efc000]
         java.lang.Thread.State: TIMED_WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at sun.java2d.opengl.OGLRenderQueue$QueueFlusher.run(OGLRenderQueue.java:203)
      - locked <0x0000000780004a78> (a sun.java2d.opengl.OGLRenderQueue$QueueFlusher)

      "AWT-Shutdown" #16 prio=5 os_prio=31 tid=0x00007fa7a9930000 nid=0x8913 in Object.wait() [0x0000700001b6a000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:295)
      - locked <0x0000000780017b70> (a java.lang.Object)
      at java.lang.Thread.run(Thread.java:745)

      "AppKit Thread" #15 daemon prio=5 os_prio=31 tid=0x00007fa7a8977800 nid=0xa0b runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Timer-0" #13 daemon prio=5 os_prio=31 tid=0x00007fa7a8969000 nid=0x620f in Object.wait() [0x00007000019e4000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at java.util.TimerThread.mainLoop(Timer.java:526)
      - locked <0x0000000780011b80> (a java.util.TaskQueue)
      at java.util.TimerThread.run(Timer.java:505)

      "Service Thread" #12 daemon prio=9 os_prio=31 tid=0x00007fa7a981b000 nid=0x5a03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C1 CompilerThread3" #11 daemon prio=9 os_prio=31 tid=0x00007fa7a8879000 nid=0x5803 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread2" #10 daemon prio=9 os_prio=31 tid=0x00007fa7a8878000 nid=0x5603 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread1" #9 daemon prio=9 os_prio=31 tid=0x00007fa7a8877800 nid=0x5403 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread0" #8 daemon prio=9 os_prio=31 tid=0x00007fa7aa016000 nid=0x5203 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Command Reader" #7 daemon prio=10 os_prio=31 tid=0x00007fa7a8876800 nid=0x5003 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Event Helper Thread" #6 daemon prio=10 os_prio=31 tid=0x00007fa7a9811800 nid=0x4e03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Transport Listener: dt_socket" #5 daemon prio=10 os_prio=31 tid=0x00007fa7aa015000 nid=0x4c03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Signal Dispatcher" #4 daemon prio=9 os_prio=31 tid=0x00007fa7a9801000 nid=0x4913 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Finalizer" #3 daemon prio=8 os_prio=31 tid=0x00007fa7aa00f000 nid=0x3803 in Object.wait() [0x0000700000d3a000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
      - locked <0x000000078002b008> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
      at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

      "Reference Handler" #2 daemon prio=10 os_prio=31 tid=0x00007fa7aa00c800 nid=0x3603 in Object.wait() [0x0000700000c37000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
      - locked <0x0000000780023370> (a java.lang.ref.Reference$Lock)
      at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

      "VM Thread" os_prio=31 tid=0x00007fa7a8868800 nid=0x3403 runnable

      "GC task thread#0 (ParallelGC)" os_prio=31 tid=0x00007fa7aa003800 nid=0x2403 runnable

      "GC task thread#1 (ParallelGC)" os_prio=31 tid=0x00007fa7aa004000 nid=0x2603 runnable

      "GC task thread#2 (ParallelGC)" os_prio=31 tid=0x00007fa7aa004800 nid=0x2803 runnable

      "GC task thread#3 (ParallelGC)" os_prio=31 tid=0x00007fa7aa005000 nid=0x2a03 runnable

      "GC task thread#4 (ParallelGC)" os_prio=31 tid=0x00007fa7aa006000 nid=0x2c03 runnable

      "GC task thread#5 (ParallelGC)" os_prio=31 tid=0x00007fa7aa006800 nid=0x2e03 runnable

      "GC task thread#6 (ParallelGC)" os_prio=31 tid=0x00007fa7aa007000 nid=0x3003 runnable

      "GC task thread#7 (ParallelGC)" os_prio=31 tid=0x00007fa7aa007800 nid=0x3203 runnable

      "VM Periodic Task Thread" os_prio=31 tid=0x00007fa7a980e000 nid=0x5c03 waiting on condition

      JNI global references: 11590

      Heap
       PSYoungGen total 273920K, used 136348K [0x00000007aab00000, 0x00000007c0000000, 0x00000007c0000000)
        eden space 223232K, 38% used [0x00000007aab00000,0x00000007aff0b000,0x00000007b8500000)
        from space 50688K, 99% used [0x00000007b8500000,0x00000007bb61c190,0x00000007bb680000)
        to space 65024K, 0% used [0x00000007bc080000,0x00000007bc080000,0x00000007c0000000)
       ParOldGen total 699392K, used 119003K [0x0000000780000000, 0x00000007aab00000, 0x00000007aab00000)
        object space 699392K, 17% used [0x0000000780000000,0x0000000787436ca0,0x00000007aab00000)
       Metaspace used 63265K, capacity 64330K, committed 64384K, reserved 1103872K
        class space used 8830K, capacity 9049K, committed 9088K, reserved 1048576K

      2017-01-05 10:44:52
      Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.112-b16 mixed mode):

      "NanoOffset" #30 daemon prio=6 os_prio=31 tid=0x00007fa7b70f7800 nid=0x1206f waiting on condition [0x00007000024b9000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
      at java.lang.Thread.sleep(Native Method)
      at java.lang.Thread.sleep(Thread.java:340)
      at java.util.concurrent.TimeUnit.sleep(TimeUnit.java:386)
      at org.apache.jmeter.samplers.SampleResult$NanoOffset.getOffset(SampleResult.java:1472)
      at org.apache.jmeter.samplers.SampleResult$NanoOffset.run(SampleResult.java:1465)

      "DestroyJavaVM" #22 prio=5 os_prio=31 tid=0x00007fa7ac3af000 nid=0x1703 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "TimerQueue" #21 daemon prio=5 os_prio=31 tid=0x00007fa7b15f2000 nid=0x1131b waiting on condition [0x000070000238b000]
         java.lang.Thread.State: WAITING (parking)
      at sun.misc.Unsafe.park(Native Method)
      - parking to wait for <0x00000007804f86d0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
      at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
      at java.util.concurrent.DelayQueue.take(DelayQueue.java:211)
      at javax.swing.TimerQueue.run(TimerQueue.java:174)
      at java.lang.Thread.run(Thread.java:745)

      "AWT-EventQueue-0" #20 prio=6 os_prio=31 tid=0x00007fa7a8afc000 nid=0xf707 runnable [0x0000700002202000]
         java.lang.Thread.State: RUNNABLE
      at sun.font.SunLayoutEngine.nativeLayout(Native Method)
      at sun.font.SunLayoutEngine.layout(SunLayoutEngine.java:161)
      at sun.font.GlyphLayout$EngineRecord.layout(GlyphLayout.java:682)
      at sun.font.GlyphLayout.layout(GlyphLayout.java:463)
      at sun.font.ExtendedTextSourceLabel.createGV(ExtendedTextSourceLabel.java:329)
      at sun.font.ExtendedTextSourceLabel.getGV(ExtendedTextSourceLabel.java:315)
      at sun.font.ExtendedTextSourceLabel.createCharinfo(ExtendedTextSourceLabel.java:619)
      at sun.font.ExtendedTextSourceLabel.getCharinfo(ExtendedTextSourceLabel.java:548)
      at sun.font.ExtendedTextSourceLabel.getLineBreakIndex(ExtendedTextSourceLabel.java:480)
      at java.awt.font.TextMeasurer.calcLineBreak(TextMeasurer.java:330)
      at java.awt.font.TextMeasurer.getLineBreakIndex(TextMeasurer.java:566)
      at java.awt.font.LineBreakMeasurer.nextOffset(LineBreakMeasurer.java:359)
      at java.awt.font.LineBreakMeasurer.nextLayout(LineBreakMeasurer.java:440)
      at javax.swing.text.TextLayoutStrategy.sync(TextLayoutStrategy.java:324)
      at javax.swing.text.TextLayoutStrategy.insertUpdate(TextLayoutStrategy.java:70)
      at javax.swing.text.FlowView.insertUpdate(FlowView.java:256)
      at javax.swing.text.View.forwardUpdateToView(View.java:1227)
      at javax.swing.text.View.forwardUpdate(View.java:1162)
      at javax.swing.text.BoxView.forwardUpdate(BoxView.java:240)
      at javax.swing.text.View.insertUpdate(View.java:710)
      at javax.swing.plaf.basic.BasicTextUI$RootView.insertUpdate(BasicTextUI.java:1610)
      at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.insertUpdate(BasicTextUI.java:1869)
      at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:201)
      at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:748)
      at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:707)
      at javax.swing.text.PlainDocument.insertString(PlainDocument.java:130)
      at javax.swing.text.DefaultEditorKit.read(DefaultEditorKit.java:273)
      at javax.swing.JEditorPane.setText(JEditorPane.java:1416)
      at org.apache.jmeter.visualizers.RenderAsText.showTextResponse(RenderAsText.java:36)
      at org.apache.jmeter.visualizers.RenderAsText.renderResult(RenderAsText.java:31)
      at org.apache.jmeter.visualizers.ViewResultsFullVisualizer.valueChanged(ViewResultsFullVisualizer.java:270)
      at javax.swing.JTree.fireValueChanged(JTree.java:2927)
      at javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:3391)
      at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:635)
      at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1093)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:294)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(DefaultTreeSelectionModel.java:188)
      at javax.swing.JTree.setSelectionPath(JTree.java:1634)
      at javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(BasicTreeUI.java:2393)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(BasicTreeUI.java:3609)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(BasicTreeUI.java:3548)
      at java.awt.Component.processMouseEvent(Component.java:6530)
      at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
      at java.awt.Component.processEvent(Component.java:6298)
      at java.awt.Container.processEvent(Container.java:2236)
      at java.awt.Component.dispatchEventImpl(Component.java:4889)
      at java.awt.Container.dispatchEventImpl(Container.java:2294)
      at java.awt.Component.dispatchEvent(Component.java:4711)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
      at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4522)
      at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
      at java.awt.Container.dispatchEventImpl(Container.java:2280)
      at java.awt.Window.dispatchEventImpl(Window.java:2746)
      at java.awt.Component.dispatchEvent(Component.java:4711)
      at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
      at java.awt.EventQueue.access$500(EventQueue.java:97)
      at java.awt.EventQueue$3.run(EventQueue.java:709)
      at java.awt.EventQueue$3.run(EventQueue.java:703)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
      at java.awt.EventQueue$4.run(EventQueue.java:731)
      at java.awt.EventQueue$4.run(EventQueue.java:729)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
      at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
      at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
      at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

      "Java2D Disposer" #18 daemon prio=10 os_prio=31 tid=0x00007fa7a99b5000 nid=0xdd13 in Object.wait() [0x0000700001fff000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
      - locked <0x0000000780011b40> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
      at sun.java2d.Disposer.run(Disposer.java:148)
      at java.lang.Thread.run(Thread.java:745)

      "Java2D Queue Flusher" #17 daemon prio=10 os_prio=31 tid=0x00007fa7a89da800 nid=0xdb0b in Object.wait() [0x0000700001efc000]
         java.lang.Thread.State: TIMED_WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at sun.java2d.opengl.OGLRenderQueue$QueueFlusher.run(OGLRenderQueue.java:203)
      - locked <0x0000000780004a78> (a sun.java2d.opengl.OGLRenderQueue$QueueFlusher)

      "AWT-Shutdown" #16 prio=5 os_prio=31 tid=0x00007fa7a9930000 nid=0x8913 in Object.wait() [0x0000700001b6a000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:295)
      - locked <0x0000000780017b70> (a java.lang.Object)
      at java.lang.Thread.run(Thread.java:745)

      "AppKit Thread" #15 daemon prio=5 os_prio=31 tid=0x00007fa7a8977800 nid=0xa0b runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Timer-0" #13 daemon prio=5 os_prio=31 tid=0x00007fa7a8969000 nid=0x620f in Object.wait() [0x00007000019e4000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at java.util.TimerThread.mainLoop(Timer.java:526)
      - locked <0x0000000780011b80> (a java.util.TaskQueue)
      at java.util.TimerThread.run(Timer.java:505)

      "Service Thread" #12 daemon prio=9 os_prio=31 tid=0x00007fa7a981b000 nid=0x5a03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C1 CompilerThread3" #11 daemon prio=9 os_prio=31 tid=0x00007fa7a8879000 nid=0x5803 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread2" #10 daemon prio=9 os_prio=31 tid=0x00007fa7a8878000 nid=0x5603 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread1" #9 daemon prio=9 os_prio=31 tid=0x00007fa7a8877800 nid=0x5403 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread0" #8 daemon prio=9 os_prio=31 tid=0x00007fa7aa016000 nid=0x5203 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Command Reader" #7 daemon prio=10 os_prio=31 tid=0x00007fa7a8876800 nid=0x5003 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Event Helper Thread" #6 daemon prio=10 os_prio=31 tid=0x00007fa7a9811800 nid=0x4e03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Transport Listener: dt_socket" #5 daemon prio=10 os_prio=31 tid=0x00007fa7aa015000 nid=0x4c03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Signal Dispatcher" #4 daemon prio=9 os_prio=31 tid=0x00007fa7a9801000 nid=0x4913 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Finalizer" #3 daemon prio=8 os_prio=31 tid=0x00007fa7aa00f000 nid=0x3803 in Object.wait() [0x0000700000d3a000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
      - locked <0x000000078002b008> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
      at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

      "Reference Handler" #2 daemon prio=10 os_prio=31 tid=0x00007fa7aa00c800 nid=0x3603 in Object.wait() [0x0000700000c37000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
      - locked <0x0000000780023370> (a java.lang.ref.Reference$Lock)
      at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

      "VM Thread" os_prio=31 tid=0x00007fa7a8868800 nid=0x3403 runnable

      "GC task thread#0 (ParallelGC)" os_prio=31 tid=0x00007fa7aa003800 nid=0x2403 runnable

      "GC task thread#1 (ParallelGC)" os_prio=31 tid=0x00007fa7aa004000 nid=0x2603 runnable

      "GC task thread#2 (ParallelGC)" os_prio=31 tid=0x00007fa7aa004800 nid=0x2803 runnable

      "GC task thread#3 (ParallelGC)" os_prio=31 tid=0x00007fa7aa005000 nid=0x2a03 runnable

      "GC task thread#4 (ParallelGC)" os_prio=31 tid=0x00007fa7aa006000 nid=0x2c03 runnable

      "GC task thread#5 (ParallelGC)" os_prio=31 tid=0x00007fa7aa006800 nid=0x2e03 runnable

      "GC task thread#6 (ParallelGC)" os_prio=31 tid=0x00007fa7aa007000 nid=0x3003 runnable

      "GC task thread#7 (ParallelGC)" os_prio=31 tid=0x00007fa7aa007800 nid=0x3203 runnable

      "VM Periodic Task Thread" os_prio=31 tid=0x00007fa7a980e000 nid=0x5c03 waiting on condition

      JNI global references: 11379

      Heap
       PSYoungGen total 253440K, used 74799K [0x00000007aab00000, 0x00000007bf880000, 0x00000007c0000000)
        eden space 175616K, 34% used [0x00000007aab00000,0x00000007ae61bd78,0x00000007b5680000)
        from space 77824K, 18% used [0x00000007bac80000,0x00000007bba70000,0x00000007bf880000)
        to space 82944K, 0% used [0x00000007b5680000,0x00000007b5680000,0x00000007ba780000)
       ParOldGen total 699392K, used 261270K [0x0000000780000000, 0x00000007aab00000, 0x00000007aab00000)
        object space 699392K, 37% used [0x0000000780000000,0x000000078ff25b70,0x00000007aab00000)
       Metaspace used 62893K, capacity 63758K, committed 64384K, reserved 1103872K
        class space used 8774K, capacity 8950K, committed 9088K, reserved 1048576K

      2017-01-05 10:45:01
      Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.112-b16 mixed mode):

      "NanoOffset" #30 daemon prio=6 os_prio=31 tid=0x00007fa7b70f7800 nid=0x1206f waiting on condition [0x00007000024b9000]
         java.lang.Thread.State: TIMED_WAITING (sleeping)
      at java.lang.Thread.sleep(Native Method)
      at java.lang.Thread.sleep(Thread.java:340)
      at java.util.concurrent.TimeUnit.sleep(TimeUnit.java:386)
      at org.apache.jmeter.samplers.SampleResult$NanoOffset.getOffset(SampleResult.java:1472)
      at org.apache.jmeter.samplers.SampleResult$NanoOffset.run(SampleResult.java:1465)

      "DestroyJavaVM" #22 prio=5 os_prio=31 tid=0x00007fa7ac3af000 nid=0x1703 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "TimerQueue" #21 daemon prio=5 os_prio=31 tid=0x00007fa7b15f2000 nid=0x1131b waiting on condition [0x000070000238b000]
         java.lang.Thread.State: WAITING (parking)
      at sun.misc.Unsafe.park(Native Method)
      - parking to wait for <0x00000007804f86d0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
      at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
      at java.util.concurrent.DelayQueue.take(DelayQueue.java:211)
      at javax.swing.TimerQueue.run(TimerQueue.java:174)
      at java.lang.Thread.run(Thread.java:745)

      "AWT-EventQueue-0" #20 prio=6 os_prio=31 tid=0x00007fa7a8afc000 nid=0xf707 runnable [0x0000700002202000]
         java.lang.Thread.State: RUNNABLE
      at sun.font.CStrike.getNativeGlyphOutline(Native Method)
      at sun.font.CStrike.getGlyphOutline(CStrike.java:215)
      at sun.font.CStrike.getGlyphOutlineBounds(CStrike.java:177)
      at sun.font.StandardGlyphVector$GlyphStrike.getGlyphOutlineBounds(StandardGlyphVector.java:1792)
      at sun.font.StandardGlyphVector.getGlyphOutlineBounds(StandardGlyphVector.java:1174)
      at sun.font.StandardGlyphVector.getGlyphVisualBounds(StandardGlyphVector.java:586)
      at sun.font.StandardGlyphVector.getGlyphInfo(StandardGlyphVector.java:864)
      at sun.font.ExtendedTextSourceLabel.createCharinfo(ExtendedTextSourceLabel.java:622)
      at sun.font.ExtendedTextSourceLabel.getCharinfo(ExtendedTextSourceLabel.java:548)
      at sun.font.ExtendedTextSourceLabel.getLineBreakIndex(ExtendedTextSourceLabel.java:480)
      at java.awt.font.TextMeasurer.calcLineBreak(TextMeasurer.java:330)
      at java.awt.font.TextMeasurer.getLineBreakIndex(TextMeasurer.java:566)
      at java.awt.font.LineBreakMeasurer.nextOffset(LineBreakMeasurer.java:359)
      at java.awt.font.LineBreakMeasurer.nextLayout(LineBreakMeasurer.java:440)
      at javax.swing.text.TextLayoutStrategy.sync(TextLayoutStrategy.java:324)
      at javax.swing.text.TextLayoutStrategy.insertUpdate(TextLayoutStrategy.java:70)
      at javax.swing.text.FlowView.insertUpdate(FlowView.java:256)
      at javax.swing.text.View.forwardUpdateToView(View.java:1227)
      at javax.swing.text.View.forwardUpdate(View.java:1162)
      at javax.swing.text.BoxView.forwardUpdate(BoxView.java:240)
      at javax.swing.text.View.insertUpdate(View.java:710)
      at javax.swing.plaf.basic.BasicTextUI$RootView.insertUpdate(BasicTextUI.java:1610)
      at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.insertUpdate(BasicTextUI.java:1869)
      at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:201)
      at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:748)
      at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:707)
      at javax.swing.text.PlainDocument.insertString(PlainDocument.java:130)
      at javax.swing.text.DefaultEditorKit.read(DefaultEditorKit.java:273)
      at javax.swing.JEditorPane.setText(JEditorPane.java:1416)
      at org.apache.jmeter.visualizers.RenderAsText.showTextResponse(RenderAsText.java:36)
      at org.apache.jmeter.visualizers.RenderAsText.renderResult(RenderAsText.java:31)
      at org.apache.jmeter.visualizers.ViewResultsFullVisualizer.valueChanged(ViewResultsFullVisualizer.java:270)
      at javax.swing.JTree.fireValueChanged(JTree.java:2927)
      at javax.swing.JTree$TreeSelectionRedirector.valueChanged(JTree.java:3391)
      at javax.swing.tree.DefaultTreeSelectionModel.fireValueChanged(DefaultTreeSelectionModel.java:635)
      at javax.swing.tree.DefaultTreeSelectionModel.notifyPathChange(DefaultTreeSelectionModel.java:1093)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPaths(DefaultTreeSelectionModel.java:294)
      at javax.swing.tree.DefaultTreeSelectionModel.setSelectionPath(DefaultTreeSelectionModel.java:188)
      at javax.swing.JTree.setSelectionPath(JTree.java:1634)
      at javax.swing.plaf.basic.BasicTreeUI.selectPathForEvent(BasicTreeUI.java:2393)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.handleSelection(BasicTreeUI.java:3609)
      at javax.swing.plaf.basic.BasicTreeUI$Handler.mousePressed(BasicTreeUI.java:3548)
      at java.awt.Component.processMouseEvent(Component.java:6530)
      at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
      at java.awt.Component.processEvent(Component.java:6298)
      at java.awt.Container.processEvent(Container.java:2236)
      at java.awt.Component.dispatchEventImpl(Component.java:4889)
      at java.awt.Container.dispatchEventImpl(Container.java:2294)
      at java.awt.Component.dispatchEvent(Component.java:4711)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888)
      at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4522)
      at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466)
      at java.awt.Container.dispatchEventImpl(Container.java:2280)
      at java.awt.Window.dispatchEventImpl(Window.java:2746)
      at java.awt.Component.dispatchEvent(Component.java:4711)
      at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
      at java.awt.EventQueue.access$500(EventQueue.java:97)
      at java.awt.EventQueue$3.run(EventQueue.java:709)
      at java.awt.EventQueue$3.run(EventQueue.java:703)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90)
      at java.awt.EventQueue$4.run(EventQueue.java:731)
      at java.awt.EventQueue$4.run(EventQueue.java:729)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
      at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
      at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
      at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

      "Java2D Disposer" #18 daemon prio=10 os_prio=31 tid=0x00007fa7a99b5000 nid=0xdd13 in Object.wait() [0x0000700001fff000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
      - locked <0x0000000780011b40> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
      at sun.java2d.Disposer.run(Disposer.java:148)
      at java.lang.Thread.run(Thread.java:745)

      "Java2D Queue Flusher" #17 daemon prio=10 os_prio=31 tid=0x00007fa7a89da800 nid=0xdb0b in Object.wait() [0x0000700001efc000]
         java.lang.Thread.State: TIMED_WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at sun.java2d.opengl.OGLRenderQueue$QueueFlusher.run(OGLRenderQueue.java:203)
      - locked <0x0000000780004a78> (a sun.java2d.opengl.OGLRenderQueue$QueueFlusher)

      "AWT-Shutdown" #16 prio=5 os_prio=31 tid=0x00007fa7a9930000 nid=0x8913 in Object.wait() [0x0000700001b6a000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:295)
      - locked <0x0000000780017b70> (a java.lang.Object)
      at java.lang.Thread.run(Thread.java:745)

      "AppKit Thread" #15 daemon prio=5 os_prio=31 tid=0x00007fa7a8977800 nid=0xa0b runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Timer-0" #13 daemon prio=5 os_prio=31 tid=0x00007fa7a8969000 nid=0x620f in Object.wait() [0x00007000019e4000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at java.util.TimerThread.mainLoop(Timer.java:526)
      - locked <0x0000000780011b80> (a java.util.TaskQueue)
      at java.util.TimerThread.run(Timer.java:505)

      "Service Thread" #12 daemon prio=9 os_prio=31 tid=0x00007fa7a981b000 nid=0x5a03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C1 CompilerThread3" #11 daemon prio=9 os_prio=31 tid=0x00007fa7a8879000 nid=0x5803 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread2" #10 daemon prio=9 os_prio=31 tid=0x00007fa7a8878000 nid=0x5603 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread1" #9 daemon prio=9 os_prio=31 tid=0x00007fa7a8877800 nid=0x5403 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "C2 CompilerThread0" #8 daemon prio=9 os_prio=31 tid=0x00007fa7aa016000 nid=0x5203 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Command Reader" #7 daemon prio=10 os_prio=31 tid=0x00007fa7a8876800 nid=0x5003 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Event Helper Thread" #6 daemon prio=10 os_prio=31 tid=0x00007fa7a9811800 nid=0x4e03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "JDWP Transport Listener: dt_socket" #5 daemon prio=10 os_prio=31 tid=0x00007fa7aa015000 nid=0x4c03 runnable [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Signal Dispatcher" #4 daemon prio=9 os_prio=31 tid=0x00007fa7a9801000 nid=0x4913 waiting on condition [0x0000000000000000]
         java.lang.Thread.State: RUNNABLE

      "Finalizer" #3 daemon prio=8 os_prio=31 tid=0x00007fa7aa00f000 nid=0x3803 in Object.wait() [0x0000700000d3a000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
      - locked <0x000000078002b008> (a java.lang.ref.ReferenceQueue$Lock)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
      at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)

      "Reference Handler" #2 daemon prio=10 os_prio=31 tid=0x00007fa7aa00c800 nid=0x3603 in Object.wait() [0x0000700000c37000]
         java.lang.Thread.State: WAITING (on object monitor)
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:502)
      at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
      - locked <0x0000000780023370> (a java.lang.ref.Reference$Lock)
      at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)

      "VM Thread" os_prio=31 tid=0x00007fa7a8868800 nid=0x3403 runnable

      "GC task thread#0 (ParallelGC)" os_prio=31 tid=0x00007fa7aa003800 nid=0x2403 runnable

      "GC task thread#1 (ParallelGC)" os_prio=31 tid=0x00007fa7aa004000 nid=0x2603 runnable

      "GC task thread#2 (ParallelGC)" os_prio=31 tid=0x00007fa7aa004800 nid=0x2803 runnable

      "GC task thread#3 (ParallelGC)" os_prio=31 tid=0x00007fa7aa005000 nid=0x2a03 runnable

      "GC task thread#4 (ParallelGC)" os_prio=31 tid=0x00007fa7aa006000 nid=0x2c03 runnable

      "GC task thread#5 (ParallelGC)" os_prio=31 tid=0x00007fa7aa006800 nid=0x2e03 runnable

      "GC task thread#6 (ParallelGC)" os_prio=31 tid=0x00007fa7aa007000 nid=0x3003 runnable

      "GC task thread#7 (ParallelGC)" os_prio=31 tid=0x00007fa7aa007800 nid=0x3203 runnable

      "VM Periodic Task Thread" os_prio=31 tid=0x00007fa7a980e000 nid=0x5c03 waiting on condition

      JNI global references: 11379

      Heap
       PSYoungGen total 256000K, used 166874K [0x00000007aab00000, 0x00000007c0000000, 0x00000007c0000000)
        eden space 171520K, 60% used [0x00000007aab00000,0x00000007b0f80a38,0x00000007b5280000)
        from space 84480K, 75% used [0x00000007b5280000,0x00000007b90f6160,0x00000007ba500000)
        to space 92160K, 0% used [0x00000007ba600000,0x00000007ba600000,0x00000007c0000000)
       ParOldGen total 699392K, used 456783K [0x0000000780000000, 0x00000007aab00000, 0x00000007aab00000)
        object space 699392K, 65% used [0x0000000780000000,0x000000079be13e38,0x00000007aab00000)
       Metaspace used 62893K, capacity 63758K, committed 64384K, reserved 1103872K
        class space used 8774K, capacity 8950K, committed 9088K, reserved 1048576K



      REPRODUCIBILITY :
      This bug can be reproduced often.

      ---------- BEGIN SOURCE ----------
      Executable in JMeter.
      Concerned class:
      https://github.com/apache/jmeter/blob/trunk/src/components/org/apache/jmeter/visualizers/RenderAsText.java






      ---------- END SOURCE ----------

      1. JEditorPaneWithoutSpace.java
        3 kB
        Abdul Kolarkunnu
      2. JEditorPaneWithoutSpace.java
        3 kB
        Abdul Kolarkunnu
      3. JEditorPaneWithSpace.java
        3 kB
        Abdul Kolarkunnu
      4. JEditorPaneWithSpace.java
        3 kB
        Abdul Kolarkunnu
      5. linux_thread_dump.txt
        9 kB
        Abdul Kolarkunnu
      6. windows_thread_dump.txt
        7 kB
        Abdul Kolarkunnu

        Activity

        Hide
        vdyakov Victor Dyakov added a comment -
        does it affect 9?
        Show
        vdyakov Victor Dyakov added a comment - does it affect 9?
        Hide
        aniyogi Avik Niyogi added a comment -
        Looks like there is insufficient data regarding the bug. Need positive test case of issue and proper steps to reproduce on any JRE platform and not custom inaccessible to us.
        Show
        aniyogi Avik Niyogi added a comment - Looks like there is insufficient data regarding the bug. Need positive test case of issue and proper steps to reproduce on any JRE platform and not custom inaccessible to us.
        Hide
        akolarkunnu Abdul Kolarkunnu added a comment -
        Submitter shared the standalone test case, attached the two test cases:
        JEditorPaneWithSpace.java : This test case invoking editor.setText() API with text which is having space
        JEditorPaneWithoutSpace.java : This test case invoking editor.setText() API with text which is not having space

        Issue is reproducible in all platforms (tested in Windows, Linux and Osx):
        Result:
        JDK9 -EA - build 152 : Fail
        JDK8u121 build 13 : Fail
        JDK7u131 build 12 : Fail

        Attached thread dumps of windows and linux.

        Observation:
        Text with space is taking 7-15 seconds
        Text without space is taking 6-15 minutes
        Show
        akolarkunnu Abdul Kolarkunnu added a comment - Submitter shared the standalone test case, attached the two test cases: JEditorPaneWithSpace.java : This test case invoking editor.setText() API with text which is having space JEditorPaneWithoutSpace.java : This test case invoking editor.setText() API with text which is not having space Issue is reproducible in all platforms (tested in Windows, Linux and Osx): Result: JDK9 -EA - build 152 : Fail JDK8u121 build 13 : Fail JDK7u131 build 12 : Fail Attached thread dumps of windows and linux. Observation: Text with space is taking 7-15 seconds Text without space is taking 6-15 minutes
        Hide
        aniyogi Avik Niyogi added a comment -
        affects 8 GA and 9.
        Show
        aniyogi Avik Niyogi added a comment - affects 8 GA and 9.
        Hide
        aniyogi Avik Niyogi added a comment -
        This is not P3 issue. This is an edge case scenario.
        Show
        aniyogi Avik Niyogi added a comment - This is not P3 issue. This is an edge case scenario.
        Hide
        aniyogi Avik Niyogi added a comment -
        Dev analysis: ILW = MLH = P4
        Show
        aniyogi Avik Niyogi added a comment - Dev analysis: ILW = MLH = P4

          People

          • Assignee:
            aniyogi Avik Niyogi
            Reporter:
            webbuggrp Webbug Group
          • Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

            • Created:
              Updated: