The CDS archive can change memory locations on different runs of the same JVM binary. This exposed a long standing bug in FileMapInfo.java. It was caching addresses that could be different for different JVM processes. As a result, doing an attach, detach, and then another attach to a different JVM process was resulting in various exceptions because the contents of CDS memory was not as expected.
Tested by running all serviceability/sa tests. Also tested with ZGC and generational ZGC. ------------- Commit messages: - Fix issue with relocatable CDS archive Changes: https://git.openjdk.org/jdk/pull/15395/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=15395&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8314679 Stats: 95 lines in 3 files changed: 94 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/15395.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/15395/head:pull/15395 PR: https://git.openjdk.org/jdk/pull/15395