-
Notifications
You must be signed in to change notification settings - Fork 216
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
8289524: Add JFR JIT restart event #853
Conversation
👋 Welcome back mbaesken! A progress list of the required criteria for merging this PR into |
This backport pull request has now been updated with issue from the original commit. |
@MBaesken This change now passes all automated pre-integration checks. ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details. After integration, the commit message for the final commit will be:
You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed. At the time when this comment was updated there had been no new commits pushed to the ➡️ To integrate this PR with the above commit message to the |
This is an enhancement. The bar for backporting events should be high. This PR also changes metadata of an existing event (adds a new field) which increases the risk for issues. The event is enabled by default, so it will have an impact on existing recordings running in production. It also contains a bug (JDK-8295419, fixed in mainline). |
I am aware of the name change done in JDK-8295419, would backport this afterwards.
Yes sure it does , if it is such a bad concern it would be possible to separate the CodeCacheFull related change from the backport, not sure if this is really an issue in practise. |
Why is this enhancement needed in an update release? I don't doubt the event has some use, all have or they would not be integrated into mainline. I just don't see what makes this event special. If a user upgrades to get the latest security fixes, and this event (or similar) is included and for some reason causes issues, how can it be explained? Why is it so important? |
Having a couple of additional interesting (and not too complex !) events in the latest LTS is not a bad thing but this is my personal impression. On the other hand I do not care that much, if it is rejected than probably all additional events would be rejected because the others I looked at that were interesting were more complex. |
Hi |
I think the bar should be high and there should be a good reason, for example to support new hardware or OS versions. Improve security. Things that are essential to be able to use the existing JDK release. I don't see this JFR event fall into that category. |
I know there have been discussions about backporting JFR events earlier on and I think none have ever happened. But I think we should constantly reconsider our decisions. Regarding JFR event backports, we have been very conservative overall and I think that is not bad. We need to be careful regarding stability and not to break things. Also, major feature improvements need to come with newer JDK releases. However, we still need and want to support our customers that are running on LTS releases of the OpenJDK. And that's what additional/improved JFR events will help to achieve. So, while we should err on the path of caution as to not break anything, I think we should not reject JFR enhancements per se. At least that's my current thinking... |
@egahlin do you have any concrete concerns regarding the safety or risk of this patch? Or would it make the produced JFR output incompatible with JMC or other readers in any way? If it is just a general concern about downporting practices, I vote for downporting it. As maintainers we have a high interest in keeping 17u stable, but we also need to have tools to analyze problems in the field. |
We had a few backports to 11 (8003209 even backported to 8) in the past https://bugs.openjdk.org/browse/JDK-8213617 https://bugs.openjdk.org/browse/JDK-8223438 https://bugs.openjdk.org/browse/JDK-8003209 The last one looks like a rather complex event, as far as I can see ... Maybe regarding this event, as a compromise we could wait until jdk20 is released (includes JDK-8289524) and then some time; and then do the backport. |
I don't know the impact on JMC or other tools consuming JFR data. To know, one would need to try them out, but any modification of the event metadata, or what is enabled in the default configuration, risks being a problem. When backporting events several releases back, it also becomes confusing for JFR API users since the event will be missing in releases between. In this case, JDK 18 and JDK 19.
I like to know what problem this event solves? If there have been say 3-5 JVM bugs where this event would have resolved them significant faster, I think an argument can be made (and explained to a customer why it was added in a security update). It contributes to stability (faster fixes). On the other hand, adding events to get features 10 months faster into a LTS release doesn't sound like the right reason to me. |
The |
it is labeled clean so I got the info from Goetz Lindenmaier that it can be integrated. |
/integrate |
Going to push as commit 10b7a6d.
Your commit was automatically rebased without conflicts. |
backport of 8289524
Progress
Issue
Reviewing
Using
git
Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk17u-dev pull/853/head:pull/853
$ git checkout pull/853
Update a local copy of the PR:
$ git checkout pull/853
$ git pull https://git.openjdk.org/jdk17u-dev pull/853/head
Using Skara CLI tools
Checkout this PR locally:
$ git pr checkout 853
View PR using the GUI difftool:
$ git pr show -t 853
Using diff file
Download this PR as a diff file:
https://git.openjdk.org/jdk17u-dev/pull/853.diff