JDK-6440220 : IE/Plugin hang reloading ArcTest during WComponentPeer._requestFocus()
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 5.0u8
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_xp
  • CPU: x86
  • Submitted: 2006-06-19
  • Updated: 2010-08-06
  • Resolved: 2006-06-26
Related Reports
Duplicate :  
Description
The attached test case (new-handle-leak-operation.zip) hangs after running for several hours on a certain machine (pretty hard to reproduce since very timing sensitive plus other type of freeze might occur prior to this one tracked by other bugs: 6433650, 6418035).

Java Stack: 

Full thread dump Java HotSpot(TM) Client VM (1.5.0_08-b02 mixed mode, sharing):

"Thread-58861" prio=6 tid=0x084ed3c0 nid=0x9e0 in Object.wait() [0x0bb37000..0x0
bb380b8]
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Unknown Source)
        at com.sun.deploy.util.DeployAWTUtil.invokeAndWait(Unknown Source)
        - locked <0x20bff360> (a com.sun.deploy.util.DeployAWTUtil$1AWTInvocatio
nLock)
        at sun.plugin.viewer.frame.IExplorerEmbeddedFrame.setBean(Unknown Source
)
        at sun.plugin.viewer.IExplorerPluginObject.createFrame(Unknown Source)

"Thread-58856" prio=6 tid=0x0a35e120 nid=0x194 runnable [0x00000000..0x0998e4a8]


"Thread-58851" prio=6 tid=0x0852d660 nid=0xb78 runnable [0x00000000..0x0ac3e4a8]


"TimerQueue" daemon prio=6 tid=0x084b5090 nid=0x51c in Object.wait() [0x0926f000
..0x0926fd68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x21425698> (a javax.swing.TimerQueue)
        at javax.swing.TimerQueue.run(Unknown Source)
        - locked <0x21425698> (a javax.swing.TimerQueue)
        at java.lang.Thread.run(Unknown Source)

"AWT-EventQueue-0" prio=6 tid=0x084584b8 nid=0x2a4 runnable [0x090cf000..0x090cf
9e8]
        at sun.awt.windows.WComponentPeer._requestFocus(Native Method)
        at sun.awt.windows.WComponentPeer.requestFocus(Unknown Source)
        at java.awt.Component.requestFocusHelper(Unknown Source)
        at java.awt.Component.requestFocusInWindow(Unknown Source)
        at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Window.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.SequencedEvent.dispatch(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)

        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)

"ConsoleWriterThread" daemon prio=6 tid=0x08443d80 nid=0xeac in Object.wait() [0
x08fcf000..0x08fcfa68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x213bcc10> (a java.lang.Object)
        at java.lang.Object.wait(Unknown Source)
        at com.sun.deploy.util.ConsoleTraceListener$ConsoleWriterThread.run(Unkn
own Source)
        - locked <0x213bcc10> (a java.lang.Object)

"AWT-EventQueue-1" prio=6 tid=0x0840cfd8 nid=0xf0c in Object.wait() [0x08ecf000.
.0x08ecfae8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x213b54e8> (a java.awt.EventQueue)
        at java.lang.Object.wait(Unknown Source)
        at java.awt.EventQueue.getNextEvent(Unknown Source)
        - locked <0x213b54e8> (a java.awt.EventQueue)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)

        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)

"AWT-Shutdown" prio=6 tid=0x083e6008 nid=0x578 in Object.wait() [0x08dcf000..0x0
8dcfb68]
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Unknown Source)
        at sun.awt.AWTAutoShutdown.run(Unknown Source)
        - locked <0x21344070> (a java.lang.Object)
        at java.lang.Thread.run(Unknown Source)

"traceMsgQueueThread" daemon prio=6 tid=0x083f4d78 nid=0xa44 in Object.wait() [0
x08acf000..0x08acfc68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x21398e20> (a java.util.ArrayList)
        at java.lang.Object.wait(Unknown Source)
        at com.sun.deploy.util.Trace$TraceMsgQueueChecker.run(Unknown Source)
        - locked <0x21398e20> (a java.util.ArrayList)
        at java.lang.Thread.run(Unknown Source)

"AWT-Windows" daemon prio=6 tid=0x083e63e8 nid=0xcd4 runnable [0x088bf000..0x088
bfce8]
        at sun.awt.windows.WToolkit.eventLoop(Native Method)
        at sun.awt.windows.WToolkit.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

"Java2D Disposer" daemon prio=10 tid=0x04f5a2e8 nid=0xe88 in Object.wait() [0x08
6bf000..0x086bf9e8]
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(Unknown Source)
        - locked <0x213684d0> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(Unknown Source)
        at sun.java2d.Disposer.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)

"Low Memory Detector" daemon prio=6 tid=0x04f14160 nid=0x804 runnable [0x0000000
0..0x00000000]

"CompilerThread0" daemon prio=10 tid=0x04f23dc0 nid=0xb98 waiting on condition [
0x00000000..0x081bf8c8]

"Signal Dispatcher" daemon prio=10 tid=0x04ee0d70 nid=0x2d0 waiting on condition
 [0x00000000..0x00000000]

"Finalizer" daemon prio=8 tid=0x04eddd78 nid=0x10c in Object.wait() [0x07fbf000.
.0x07fbfc68]
        at java.lang.Object.wait(Native Method)
        at java.lang.ref.ReferenceQueue.remove(Unknown Source)
        - locked <0x21368678> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(Unknown Source)
        at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)

"Reference Handler" daemon prio=10 tid=0x04edc960 nid=0x168 in Object.wait() [0x
07ebf000..0x07ebfce8]
        at java.lang.Object.wait(Native Method)
        at java.lang.Object.wait(Unknown Source)
        at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)
        - locked <0x213686f8> (a java.lang.ref.Reference$Lock)

"main" prio=6 tid=0x04e631b0 nid=0x150 runnable [0x00000000..0x0012cbfc]

"VM Thread" prio=10 tid=0x04ed2080 nid=0x8f4 runnable

"VM Periodic Task Thread" prio=10 tid=0x04f15368 nid=0x954 waiting on condition

***********************************************

The native stacks are attached to this report.

***********************************************

CONFIGURATION :
 OS : WinXP(SP2, Japanese)
 JRE : jre5.0u8
      java version "1.5.0_08 build 02"
      Java HotSpot(TM) Client VM 

REPRODUCE:
 1) Unfold the attached zip file.
 2) Modify ArcTest\testcase\top.html for your directory structure.
 3) Double click the Top.html
  IE windows appears
 4) Select "1.5.0_xx ArcTest" in pull down menu
 5) Set "5000" in t"Interval" textbox
 6) Click "Launch" button
  "ArcTest" is opened and closed automatically

After a number of hours, IE sometimes freezes with this stack.