RFR: 8317287: [macos14] InterJVMGetDropSuccessTest.java: Child VM: abnormal termination [v2]

null duke at openjdk.org
Tue Oct 31 09:26:10 UTC 2023


> The root cause of the bug is because mousePress() method is invoked before mouseMove() event is completely processed causing the drag & drop behavior not being able to be recognized properly. This in turn makes the method dragSourceListener.isDropFinished() returns false and fail the test. To fix this, setAutoWaitForIdle(true) and Thread.Sleep is called to make sure the mouseMove() event is processed completely before moving to execute the mousePress() method.
> 
> JBS issue: [JDK-8317287](https://bugs.openjdk.org/browse/JDK-8317287)

null has updated the pull request incrementally with one additional commit since the last revision:

  Update InterJVMGetDropSuccessTest.java
  
  Based on description in Chapter "17.4 Memory Model", and specifically chapter "17.4.5 Happens-before Order" of the "The Java® Language Specification", DragSourceDropListener.finished field is accessed from two threads without proper synchronization which may also be possible causing the test to fail. Hence, putting code accessing to DragSourceDropListener.finished into a proper synchronization code block.

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/16396/files
  - new: https://git.openjdk.org/jdk/pull/16396/files/7598f7e2..a96950a5

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=16396&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=16396&range=00-01

  Stats: 26 lines in 1 file changed: 13 ins; 13 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/16396.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/16396/head:pull/16396

PR: https://git.openjdk.org/jdk/pull/16396


More information about the client-libs-dev mailing list