RFR (S) 8211239: Build fails without JFR: empty JFR events signatures mismatch
markus.gronlund at oracle.com
Fri Sep 28 20:46:19 UTC 2018
I am currently travelling and I have not been following this in detail.
As I understand it, JDK-8196341, extended the signatures for the commit() methods, but the associated !INCLUDE_JFR section was not updated, causing compilation errors.
I have not checked everything in detail, but it seems the fix does add those missing signature(s).
I am ok with this from a JFR perspective.
Thanks for addressing
From: Aleksey Shipilev <shade at redhat.com>
Sent: den 28 september 2018 13:25
To: hotspot-dev at openjdk.java.net
Subject: RFR (S) 8211239: Build fails without JFR: empty JFR events signatures mismatch
Anything that disables JFR as JVM feature would break the build. It started to happen with Zero, AIX, Sparc64 builds after recent G1+JFR improvement. The underlying reason for this breakage is that JFR events generator produces two versions for each event: "full" and "empty", and the version is then selected by INCLUDE_JFR macro during build time. When those two versions have different signatures, jfr-enabled build may pass, and jfr-disabled build may fail.
The way out is to rewire events generator to produce consistent signatures for events. This should be more future-proof than just fixing the printers for empty events. The downside is that autogenerated events look a bit uglier with empty bodies, but that seems to be a fair price to pay for automatic consistency.
Testing: Linux/x86_64 +jfr/-jfr build, Linux/x86_64 run-test jdk/jfr
More information about the hotspot-dev