RFR: 8364258: ThreadGroup constant pool serialization is not normalized

Markus Grönlund mgronlun at openjdk.org
Wed Jul 30 16:13:12 UTC 2025


Greetings,

The following change set normalizes the ThreadGroup constants being serialized to the .jfr binary file.

It does this in two parts:

1. Re-inserts a scavenging scheme to remove stale (unloaded) ThreadGroups; some logic that we used to have in place, but may have been lost as part of the major refactoring around JFR Event Streaming, or even earlier.
2. Introduces a per-epoch "is_serialized" scheme, building on top of JFR epoch generations.

Problem manifestation is a very high number of duplicated TGs (jdk.types.ThreadGroup) as part of JFR checkpoints.

Testing: jdk_jfr

Thanks
Markus

-------------

Commit messages:
 - 8364258

Changes: https://git.openjdk.org/jdk/pull/26558/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=26558&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8364258
  Stats: 905 lines in 11 files changed: 407 ins; 482 del; 16 mod
  Patch: https://git.openjdk.org/jdk/pull/26558.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/26558/head:pull/26558

PR: https://git.openjdk.org/jdk/pull/26558


More information about the hotspot-dev mailing list