RFR: 8272600: (test) Use native "sleep" in Basic.java [v3]
Roger Riggs
rriggs at openjdk.java.net
Thu Sep 2 13:41:30 UTC 2021
On Sat, 28 Aug 2021 02:34:48 GMT, Roger Riggs <rriggs at openjdk.org> wrote:
>> The intermittent test in java/lang/ProcessBuilder/Basic.java has identified unexpected messages from a child Java VM
>> as the cause of the test failure. Attempts to control the output of the child VM have failed, the VM is unrepentant .
>>
>> There is no functionality in the child except to wait long enough for the test to finish and the child is destroyed.
>> The fix is to switch from using a Java child to using a native child; a new executable `sleepmillis`.
>
> Roger Riggs has updated the pull request incrementally with one additional commit since the last revision:
>
> Revised to use native /bin/sleep program on Unix* (non-Windows).
> For Windows, a native "BasicSleep" program is used.
The `timeout --help` version is from a CI job:
Unexpected child output, to: getErrorStream
Child args: [cmd.exe, /c, timeout, 60]
Try 'timeout --help' for more information.
But ...\cygwin\bin is in PATH before Windows\System32
So sleep would be available, but on cygwin it is in /usr/bin.
sleep would work everywhere, except a real Windows build.
What a tortuous workaround because of a 'feature' of the VM!
-------------
PR: https://git.openjdk.java.net/jdk/pull/5239
More information about the core-libs-dev
mailing list