RFR: 8238236: Add JFR class redefinition events

Erik Gahlin erik.gahlin at oracle.com
Fri Feb 14 21:43:25 UTC 2020


Bug link should be:

http://cr.openjdk.java.net/~egahlin/8238236/ 
<http://cr.openjdk.java.net/~egahlin/8238236/>

Erik

On 2020-02-14 22:21, Erik Gahlin wrote:
> Hi,
>
> Could I have a review of three new events that covers class redefinition.
>
> Because work doesn't happen one class at a time, the ClassRedefinition 
> event doesn't have a duration. It would be possible to fake an 
> incorrect start and end time, so the duration match the amount of work 
> spent on a class, but we didn't want to deviate too much from what 
> actually happens in the JVM.  It would also require that the time for 
> each subtask is measured and aggregated.
>
> If a need for more fine-grained information should arise, it may be 
> better to add a dedicated event, i.e. ClassRedefinitionPhase, and 
> create a totalWork field in the ClassRedefinition event. This is 
> similar to how the GarbageCollection event has a sumOfPauses field and 
> separate GCPhasePause event for each pause.
>
> The events are enabled by default, contrary to other class related 
> events. The rationale is that redefinition doesn't happen that often 
> and that the information is more useful for troubleshooting, for 
> example what caused a deoptimization or if the JVM crashes due to 
> class being changed.
>
> Bug:
> https://bugs.openjdk.java.net/browse/JDK-8238959
>
> Webrev:
> http://cr.openjdk.java.net/~egahlin/8238236/
>
> Testing:
> tier1,tier2 + test/jdk/jdk/jfr
>
> Thanks
> Erik
>


More information about the hotspot-jfr-dev mailing list