RFR: 8304033: JFR: Missing thread
Markus Grönlund
mgronlun at openjdk.org
Mon Apr 3 11:54:58 UTC 2023
On Sun, 2 Apr 2023 23:08:13 GMT, David Holmes <dholmes at openjdk.org> wrote:
> Seems reasonable ... though does beg the question why it wasn't done this way from the start?
>From the early start, threads did not need to write their checkpoint data. This was because there was no way to consume JFR data until the entire file, "the chunk", was finalized. Finalization is under the control of the JFR Recorder Thread, and one part of finalization is traversing all threads to write their checkpoint data.
With JFR Event Streaming, the chunk is always parsable; that is, we have the means to have multiple readers but a single writer. The file is written in "segments", and each segment must be fully resolvable. In this case, we must ensure that the checkpoint data is written before or to the same segment as the event. The JNI parts were overlooked.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/13272#issuecomment-1494179599
More information about the hotspot-dev
mailing list