RFR: 8321400: java/foreign/TestStubAllocFailure.java fails with code cache exhaustion
David Holmes
dholmes at openjdk.org
Wed Dec 13 07:11:39 UTC 2023
On Mon, 11 Dec 2023 13:01:25 GMT, Jorn Vernee <jvernee at openjdk.org> wrote:
> Improve the test by being more lenient to related code cache exhaustion errors. The important thing is that we don't terminate with a fatal error, which the new code now checks for explicitly. The check for that is based on what is done by `./test/hotspot/jtreg/runtime/ErrorHandling/HsErrFileUtils.java` .
>
> The existing `UpcallTestHelper.Output` class that was previously used to assert on stdout/stderr contents did not have the capability to look for patterns in the output. So, I've taken the opportunity to replace it with the more canonical `OutputAnalyzer` which comes from the test library.
>
> Finally, I've also added back the test for downcall stub allocation failure which was removed as part of the initial patch because it was too inconsistent [1]. With the new approach, it should pass reliably as well.
>
> Testing: `jdk_foreign` suite (which contains all the affected tests)
>
> [1]: https://github.com/openjdk/jdk/pull/16311/commits/9a1360598a91871ce6ec48330849c0e4e0279c64
test/jdk/java/foreign/TestStubAllocFailure.java line 51:
> 49: runInNewProcess(UpcallRunner.class, true, List.of("-XX:ReservedCodeCacheSize=3M"), List.of())
> 50: .shouldNotHaveExitValue(0)
> 51: .shouldNotHaveFatalError();
Just curious what non-zero exit value is actually expected here and below?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17056#discussion_r1424930505
More information about the core-libs-dev
mailing list