RFR: 8277919: OldObjectSample event causing bloat in the class constant pool in JFR recording
Markus Grönlund
mgronlun at openjdk.java.net
Fri Dec 10 17:17:34 UTC 2021
Greetings,
Allocation heavy applications with OldObjectSample with stacktraces enabled will end up storing many duplicates of the same klass artefact, creating a considerable bloat in the class area of the recording constant pool. This is because of JDK-8233705, which can lead to multiple klass entries enqueued via the load barrier, in combination with an insufficient filter mechanism for the leak profiler artefacts. Leak profiler artefacts range of the entire set of artefacts enqueued in the previous epoch. A filtering mechanism similar to the regular artefacts becomes necessary to avoid duplicates.
Thanks to @jbachorik for reporting and doing the initial analysis.
Markus
-------------
Commit messages:
- 8277919
Changes: https://git.openjdk.java.net/jdk/pull/6801/files
Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=6801&range=00
Issue: https://bugs.openjdk.java.net/browse/JDK-8277919
Stats: 24 lines in 3 files changed: 19 ins; 0 del; 5 mod
Patch: https://git.openjdk.java.net/jdk/pull/6801.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/6801/head:pull/6801
PR: https://git.openjdk.java.net/jdk/pull/6801
More information about the hotspot-jfr-dev
mailing list