-
Notifications
You must be signed in to change notification settings - Fork 13.7k
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
KAFKA-13273: Add support for Java 17 #11296
Conversation
Java 17 is at release candidate stage and it will be a LTS release (first one since Java 11).
I expect that this will require some work before it can be merged. |
The former was removed from Java 17
I will remove again before merging.
…k.internal.util.random
Build 6 (including Java 16) passed: https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-11296/6/ I will now remove Java 16 from Jenkinsfile. |
raft/src/test/java/org/apache/kafka/raft/KafkaRaftClientTest.java
Outdated
Show resolved
Hide resolved
And we have a green build. :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ijuma Thanks for the PR. Changes LGTM.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This patch is great to me! a couple of comments below.
Java 17 is at release candidate stage and it will be a LTS release once it's out (previous LTS release was Java 11). Details: * Replace Java 16 with Java 17 in Jenkins and Readme. * Replace `--illegal-access=permit` (which was removed from Java 17) with `--add-opens` for the packages we require internal access to. Filed KAFKA-13275 for updating the tests not to require `--add-opens` (where possible). * Update `release.py` to use JDK8. and JDK 17 (instead of JDK 8 and JDK 15). * Removed all but one Streams test from `testsToExclude`. The Connect test exclusion list remains the same. * Add notable change to upgrade.html * Upgrade to Gradle 7.2 as it's required for proper Java 17 support. * Upgrade mockito to 3.12.4 for better Java 17 support. * Adjusted `KafkaRaftClientTest` and `QuorumStateTest` not to require private access to `jdk.internal.util.random`. Reviewers: Manikumar Reddy <[email protected]>, Chia-Ping Tsai <[email protected]>
Java 17 is at release candidate stage and it will be a LTS release once
it's out (previous LTS release was Java 11).
Details:
--illegal-access=permit
(which was removed from Java 17)with
--add-opens
for the packages we require internal access to.Filed KAFKA-13275 for updating the tests not to require
--add-opens
(where possible).
release.py
to use JDK8. and JDK 17 (instead of JDK 8 and JDK 15).testsToExclude
. TheConnect test exclusion list remains the same.
KafkaRaftClientTest
andQuorumStateTest
not to requireprivate access to
jdk.internal.util.random
.Committer Checklist (excluded from commit message)