RFR: 8277919: OldObjectSample event causing bloat in the class constant pool in JFR recording [v2]
Markus Grönlund
mgronlun at openjdk.java.net
Fri Dec 10 20:20:48 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 over the entire set of artefacts enqueued in the previous epoch. A filtering mechanism similar to the one used for regular artefacts becomes necessary to avoid duplicates.
>
> Thanks to @jbachorik for reporting and doing the initial analysis.
>
> Markus
Markus Grönlund has updated the pull request incrementally with one additional commit since the last revision:
special treatment for lock
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/6801/files
- new: https://git.openjdk.java.net/jdk/pull/6801/files/fe4e3162..72cce6f7
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=6801&range=01
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=6801&range=00-01
Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 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