RFR: 8353226: JFR: emit old object samples must be transitive closure complete for segment
Greetings, EventEmitter::write_events() only serializes blobified stack traces as part of old object checkpoint serialization. Still, it categorically writes a stack trace id as part of the event, even for non-blobified stack traces. As a result, the segment is incomplete. Stack traces must be serialized directly from the leak profiler repository to ensure closure. Testing: jdk_jfr Thanks Markus ------------- Commit messages: - 8353226 Changes: https://git.openjdk.org/jdk/pull/24316/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=24316&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8353226 Stats: 63 lines in 5 files changed: 59 ins; 2 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/24316.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/24316/head:pull/24316 PR: https://git.openjdk.org/jdk/pull/24316
Greetings,
EventEmitter::write_events() only serializes blobified stack traces as part of old object checkpoint serialization. Still, it categorically writes a stack trace id as part of the event, even for non-blobified stack traces. As a result, the segment is incomplete. Stack traces must be serialized directly from the leak profiler repository to ensure closure.
Testing: jdk_jfr
Thanks Markus
Markus Grönlund has updated the pull request incrementally with one additional commit since the last revision: align ------------- Changes: - all: https://git.openjdk.org/jdk/pull/24316/files - new: https://git.openjdk.org/jdk/pull/24316/files/e0c8f1a3..61f2a8ed Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=24316&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=24316&range=00-01 Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/24316.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/24316/head:pull/24316 PR: https://git.openjdk.org/jdk/pull/24316
On Sun, 30 Mar 2025 12:17:52 GMT, Markus Grönlund <mgronlun@openjdk.org> wrote:
Greetings,
EventEmitter::write_events() only serializes blobified stack traces as part of old object checkpoint serialization. Still, it categorically writes a stack trace id as part of the event, even for non-blobified stack traces. As a result, the segment is incomplete. Stack traces must be serialized directly from the leak profiler repository to ensure closure.
Testing: jdk_jfr
Thanks Markus
Markus Grönlund has updated the pull request incrementally with one additional commit since the last revision:
align
Marked as reviewed by egahlin (Reviewer). ------------- PR Review: https://git.openjdk.org/jdk/pull/24316#pullrequestreview-2729349102
On Sun, 30 Mar 2025 12:08:23 GMT, Markus Grönlund <mgronlun@openjdk.org> wrote:
Greetings,
EventEmitter::write_events() only serializes blobified stack traces as part of old object checkpoint serialization. Still, it categorically writes a stack trace id as part of the event, even for non-blobified stack traces. As a result, the segment is incomplete. Stack traces must be serialized directly from the leak profiler repository to ensure closure.
Testing: jdk_jfr
Thanks Markus
This pull request has now been integrated. Changeset: f25f7016 Author: Markus Grönlund <mgronlun@openjdk.org> URL: https://git.openjdk.org/jdk/commit/f25f701652900d02858c905f4cd0bb43208c13d5 Stats: 63 lines in 5 files changed: 59 ins; 2 del; 2 mod 8353226: JFR: emit old object samples must be transitive closure complete for segment Reviewed-by: egahlin ------------- PR: https://git.openjdk.org/jdk/pull/24316
participants (2)
-
Erik Gahlin
-
Markus Grönlund