JDK-8031471 : Test closed/java/awt/dnd/FileDialogDropTargetTest/FileDialogDropTargetTest.java fails on Solaris zones virtual hosts
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 7,8
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: solaris_10
  • CPU: sparc_64
  • Submitted: 2014-01-10
  • Updated: 2015-04-29
  • Resolved: 2014-05-30
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
6u101Fixed 7u76Fixed 8u20 b20Fixed 9Fixed
Related Reports
Duplicate :  
Duplicate :  
Duplicate :  
Duplicate :  
Testsuite name: Regression
Test name: closed/java/awt/dnd/FileDialogDropTargetTest/FileDialogDropTargetTest.java
JDk tested: JDK 8 b119, JDK 8 b91
OS tested: Solaris 10 sparcv9 zone

Test fails when run on a Solaris Zone virtual host and passes when run on real Solaris host.


command: main -Dsun.awt.disableGtkFileDialogs=true FileDialogDropTargetTest
reason: User specified action: run main/othervm/timeout=300 -Dsun.awt.disableGtkFileDialogs=true FileDialogDropTargetTest 
elapsed time (seconds): 17.429
sun.awt.X11.XException: Cannot write XdndAware property
	at sun.awt.X11.XDnDDropTargetProtocol.registerDropTarget(XDnDDropTargetProtocol.java:97)
	at sun.awt.X11.XDropTargetRegistry.registerDropSite(XDropTargetRegistry.java:571)
	at sun.awt.X11.XWindowPeer.addDropTarget(XWindowPeer.java:1994)
	at sun.awt.X11.XComponentPeer.addDropTarget(XComponentPeer.java:1353)
	at java.awt.dnd.DropTarget.addNotify(DropTarget.java:515)
	at java.awt.Component.addNotify(Component.java:6935)
	at java.awt.Container.addNotify(Container.java:2762)
	at java.awt.Window.addNotify(Window.java:770)
	at java.awt.Dialog.addNotify(Dialog.java:760)
	at java.awt.FileDialog.addNotify(FileDialog.java:324)
	at java.awt.Window.pack(Window.java:807)
	at FileDialogDropTargetTest.main(FileDialogDropTargetTest.java:54)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at com.sun.javatest.regtest.MainWrapper$MainThread.run(MainWrapper.java:94)
	at java.lang.Thread.run(Thread.java:744)

JavaTest Message: Test threw exception: sun.awt.X11.XException: Cannot write XdndAware property
JavaTest Message: shutting down test

STATUS:Failed.`main' threw exception: sun.awt.X11.XException: Cannot write XdndAware property
Taking into account this is a customer escalation and jdk6 only critical request SQE OK to take it in CPU15_03

The test has passed with jdk7u75b12 on Solaris 10 sparc zone (stt-101-zone1.ru)

http://cr.openjdk.java.net/~azvegint/jdk/9/8031471/00/ This fix also fixes JDK-7100524 and JDK-7054476 as well. This issue is related to the X error handling code: when we setting a synthetic error handler with WITH_XERROR_HANDLER() we do not wait for processing XErrorEvents for previous xlib calls which wasn't dispatched yet, so we can catch a wrong one. This fix adds a XSync() call. (like we do in the native WITH_XERROR_HANDLER macro in awt_util.h). RESTORE_XERROR_HANDLER(boolean doXSync) was called from native previously, but it was reverted back to use native xerror handler in JDK-8025775 and is no longer needed.

Release team: Approved for deferral. Pushing this to 8u20 since we're doing test cleanup in that release.

8-defer-request: P3 functional bug, affected solaris 10(64) only

Tests passes on solaris zones if run with JDK 7u51