> This PR addresses intermittent failures in jtreg GC stress tests. The > failures occur under these conditions: > 1. Using a libgraal build with assertions enabled as the top tier JIT > compiler. Such a libgraal build will cause a VM exit if an assertion or > GraalError occurs in a compiler thread (as this catches more errors in > testing). > 2. A libgraal compiler thread makes a call into the VM (via `CompilerToVM`) > to a routine that performs a HotSpot heap allocation that fails. > 3. The resulting OOME is wrapped in a GraalError, causing the VM to exit as > described in 1. > > An OOME thrown in these specific conditions should not exit the VM as it not > related to an OOME in the app or test. Instead, the failure should be treated > as a bailout and the libgraal compiler should continue. > > To accomplish this, libgraal needs to be able to distinguish a GraalError > caused by an OOME. This PR modifies the exception translation code to make > this possible.
Doug Simon has updated the pull request incrementally with one additional commit since the last revision: fixed TestTranslatedException ------------- Changes: - all: https://git.openjdk.org/jdk/pull/20083/files - new: https://git.openjdk.org/jdk/pull/20083/files/ff544be3..aa32491c Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=20083&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=20083&range=00-01 Stats: 19 lines in 2 files changed: 12 ins; 0 del; 7 mod Patch: https://git.openjdk.org/jdk/pull/20083.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/20083/head:pull/20083 PR: https://git.openjdk.org/jdk/pull/20083