RFR: 8263729: [test] Extend time to wait before destroying child in ProcssBuilder Basic test

Ioi Lam iklam at openjdk.java.net
Wed Mar 17 17:16:48 UTC 2021


On Wed, 17 Mar 2021 16:40:47 GMT, Roger Riggs <rriggs at openjdk.org> wrote:

>> The failures happened in tiers 6 and 8. The system may be overloaded so even 100ms may not be enough for the child process to start sleeping. From the error log, the child process tried to spawn a thread (probably one of those usually started during VM bootstrap) at around 118ms
>> 
>> [0.118s][warning][os,thread] Failed to start thread - _beginthreadex failed (EACCES) for attributes: stacksize: default, flags: 
>> 
>> The test runs 4 times. Each time it checks only STDOUT or STDERR, but not both. So I think we can use the other stream to signal to the main process that the child process is ready. That would be more reliable than an arbitrary wait time.
>
> That complicates the test and the child quite a bit for minimal gain.

Arbitrary time out has been a reliable source of intermittent failures.

Since we have spent a lot of time analyzing this failure, I think it's worthwhile to fix it properly, which doesn't seem that complicated. That's better than the same bug happening again a year later and a different set of people would spend hours to analyze it again.

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

PR: https://git.openjdk.java.net/jdk/pull/3049


More information about the core-libs-dev mailing list