On Fri, 10 Dec 2021 20:30:41 GMT, Chris Plummer <[email protected]> wrote:
>> The test searches for "JShellToolProvider" in the main thread's stack trace,
>> which is pulled from an SA heap dump. Typically the main thread is blocked
>> in Object.wait(), so SA can determine its stack trace. However, the wait has
>> a 100ms timeout, so the thread does periodically wake up and does a few
>> things before waiting again. If SA tries to get the stack trace while the
>> thread is active, it may not be able to, and this causes the test to fail. I
>> determined this only happens about 1 in 5000-10000 runs. So as a fix I'm
>> allowing the test to do one retry. That should make it extremely unlikely
>> that we ever see this failure again. I also bumped up the amount of time the
>> test waits before doing the heap dump from 2 seconds to 4 just to make
>> absolutely sure the main thread is fully started before doing the heap dump.
>
> Chris Plummer has updated the pull request incrementally with one additional
> commit since the last revision:
>
> Renamed isRetry to allowRetry.
Changes requested by amenkov (Reviewer).
test/jdk/sun/tools/jhsdb/JShellHeapDumpTest.java line 112:
> 110: // if that happens. This failure is so rare that this
> should be enough to make it
> 111: // extremely unlikely that we ever see this test fail
> again for this reason.
> 112: if (allowRetry) {
Looks like this should be !allowRetry
-------------
PR: https://git.openjdk.java.net/jdk/pull/6795