JDK-4278343 : Drag & Drop JVM lockup stack trace
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: unknown
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_nt
  • CPU: x86
  • Submitted: 1999-10-05
  • Updated: 2001-03-30
  • Resolved: 2001-03-30
Related Reports
Duplicate :  
Description

Name: krT82822			Date: 10/05/99


[Note:  this bug was submitted via email, not via the Web site.  The URL for the bug reporting mechanism is:
	http://java.sun.com/cgi-bin/EAbugreport.cgi  ]

------------- Begin Forwarded Message -------------

> Date: Sat, 02 Oct 1999 08:46:54 -0700
> Subject: JDK 1.3 Drag&Drop locks up even between components in the BDK BeanBox

Here's a brand new Drag and Drop JVM lockup stack trace.

My guys are putting our drag and drop aware JavaBeans inside the
BeanBox, using JDK 1.3EA (same thing happens in JDK 1.2).

Almost all the time, when you drag objects from one Bean (JComponent) to
another Bean (JComponent), the JVM locks up.  This is totally
unsatisfactory (and really should have been fixed in JDK 1.2).

We are using Windows NT.

As you can see from the stack trace, the lockup occurs in native AWT
methods:  doDragDrop and setCursor.

(note forwarded from another person at user's company:)

> Subject: Bean box continued...
> Date: Sat, 02 Oct 1999 08:39:13 -0700

C:\Program Files\BDK1.1\beanbox>set
CLASSPATH=classes;..\lib\methodtracer.jar;..\infobus.jar;leif.jar;bootprotocols.jar;swingfixes.jar;activation.jar;fesi.jar;jclass-javax.jar;..\producer2.jar;..\jars\tableinfobean.jar;..\jars\treeinfobean.jar

C:\Program Files\BDK1.1\beanbox>c:\jdk1.3\jre\bin\java sun.beanbox.BeanBoxFrame 
# of descriptors: 0 
added an item 
# of descriptors: 1 
com.dtai.domains.display.DisplayDomain.penColor is being returned! 
puting favoriteColor for: com.dtai.domains.display.DisplayDomain.penColor 
# of descriptors: 0 
# of descriptors: 0 
Full thread dump: 

"Thread-18" prio=7 tid=0x7c6520 nid=0xd7 runnable [0x9fef000..0x9fefddc] 
        at sun.awt.windows.WDragSourceContextPeer.doDragDrop(Native Method) 
        at sun.awt.windows.WDragSourceContextPeer$1.run(WDragSourceContextPeer.java:163) 

"WeakMap-Cleanup" prio=7 tid=0x791650 nid=0xc8 waiting on monitor [0x9f4f000..0x9f4fddc] 
        at java.lang.Object.wait(Native Method) 
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:112) 
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127) 
        at com.dtai.util.WeakValueHashMap$MapCleaner.run(WeakValueHashMap.java:626) 

"TimerQueue" daemon prio=7 tid=0x7b4be0 nid=0xc6 waiting on monitor [0x9f0f000..0x9f0fddc] 
        at java.lang.Object.wait(Native Method) 
        at javax.swing.TimerQueue.run(TimerQueue.java:236) 
        at java.lang.Thread.run(Thread.java:479) 

"Thread-5" prio=7 tid=0x7b5bc0 nid=0xc1 waiting on monitor [0x9ecf000..0x9ecfddc] 
        at java.lang.Object.wait(Native Method) 
        at java.lang.Object.wait(Object.java:424) 
        at sun.beanbox.BeanBox.run(BeanBox.java:1285) 
        at java.lang.Thread.run(Thread.java:479) 

"Thread-4" prio=7 tid=0x7ae6f0 nid=0xde waiting on monitor [0x9e8f000..0x9e8fddc] 
        at java.lang.Thread.sleep(Native Method) 
        at HelloWorld$1.run(HelloWorld.java:49) 

"Thread-3" prio=5 tid=0x796100 nid=0xbd waiting on monitor [0..0x6fb64] 

"Thread-2" prio=5 tid=0x795bf0 nid=0xc9 waiting on monitor [0x9d2f000..0x9d2fddc] 
        at java.lang.Object.wait(Native Method) 
        at java.lang.Object.wait(Object.java:424) 
        at sun.beanbox.BeanBoxFrame.run(BeanBoxFrame.java:233) 
        at java.lang.Thread.run(Thread.java:479) 

"Screen Updater" daemon prio=4 tid=0x792d20 nid=0xd6 waiting on monitor [0x9ccf000..0x9ccfddc] 
        at java.lang.Object.wait(Native Method) 
        at java.lang.Object.wait(Object.java:424) 
        at sun.awt.ScreenUpdater.nextEntry(ScreenUpdater.java:79) 
        at sun.awt.ScreenUpdater.run(ScreenUpdater.java:99) 

"Thread-1" prio=5 tid=0x78ea00 nid=0xce waiting on monitor [0x938f000..0x938fddc] 
        at java.lang.Object.wait(Native Method) 
        at java.lang.Object.wait(Object.java:424) 
        at sun.beanbox.ToolBoxPanel.run(ToolBox.java:247) 
        at java.lang.Thread.run(Thread.java:479) 

"AWT-Windows" prio=5 tid=0x772df0 nid=0xd2 waiting on monitor [0x932f000..0x932fddc] 
        at java.lang.Object.wait(Native Method) 
        at java.lang.Object.wait(Object.java:424) 
        at sun.awt.windows.WDropTargetContextPeer.handleEnterMessage(WDropTargetContextPeer.java:511) 
        at sun.awt.windows.WToolkit.eventLoop(Native Method) 
        at sun.awt.windows.WToolkit.run(WToolkit.java:145) 
        at java.lang.Thread.run(Thread.java:479) 

"SunToolkit.PostEventQueue-0" prio=5 tid=0x772b90 nid=0xcc waiting on monitor [0x92ef000..0x92efddc] 
        at java.lang.Object.wait(Native Method) 
        at java.lang.Object.wait(Object.java:424) 
        at sun.awt.PostEventQueue.run(SunToolkit.java:451) 

"AWT-EventQueue-0" prio=7 tid=0x772940 nid=0xcd runnable [0x92af000..0x92afddc] 
        at sun.awt.windows.WComponentPeer.setCursor(Native Method) 
        at java.awt.LightweightDispatcher.updateCursor(Container.java:2543) 
        at java.awt.Container.setCursor(Container.java:1395) 
        at sun.beanbox.Wrapper.doMouseStuff(Wrapper.java:605) 
        at sun.beanbox.Wrapper.mouseEntered(Wrapper.java:660) 
        at java.awt.Component.processMouseEvent(Component.java:3621) 
        at java.awt.Component.processEvent(Component.java:3441) 
        at java.awt.Container.processEvent(Container.java:1253) 
        at java.awt.Component.dispatchEventImpl(Component.java:2529) 
        at java.awt.Container.dispatchEventToSelf(Container.java:1322) 
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:2502) 
        at java.awt.LightweightDispatcher.trackMouseEnterExit(Container.java:2372) 
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:2261) 
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:2191) 
        at java.awt.Container.dispatchEventImpl(Container.java:1289) 
        at java.awt.Component.dispatchEvent(Component.java:2443) 
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:302) 
        at java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:105) 
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:95) 
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:86) 

"Signal Dispatcher" daemon prio=10 tid=0x7663d0 nid=0x6a waiting on monitor [0..0] 

"Finalizer" daemon prio=9 tid=0x764550 nid=0xca waiting on monitor [0x908f000..0x908fddc] 
        at java.lang.Object.wait(Native Method) 
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:112) 
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:127) 
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:166) 

"Reference Handler" daemon prio=10 tid=0x763d30 nid=0xcf waiting on monitor [0x904f000..0x904fddc] 
        at java.lang.Object.wait(Native Method) 
        at java.lang.Object.wait(Object.java:424) 
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:114) 

"VM Thread" prio=5 tid=0x763750 nid=0xc2 runnable 

"VM Periodic Task Thread" prio=10 tid=0x7662a0 nid=0x85 waiting on monitor 
  

10/5/99 eval1127@eng -- submitting as-is...
 
(Review ID: 96162) 
======================================================================

Comments
EVALUATION Doesn't seem to be specific to JavaBeans or the BeanBox. I can't reproduce it since the test beans were not included. I'm hoping that this is a known DnD bug and can be closed out. mark.davidson@Eng 2001-03-26 I believe this has already been fixed in merlin, and possibly in ladybird. Danila or Boris, can you verify this and close the bug appropriately? david.mendenhall@east 2001-03-29
26-03-2001