-
Notifications
You must be signed in to change notification settings - Fork 13.8k
[FLINK-30501] Update Flink build instruction to deprecate Java 8 instead of requiring Java 11 #21557
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
Conversation
@zentol Would you have time to review this PR? |
@flinkbot run azure |
@flinkbot run azure |
The CI failed because the container is still using Java 8 to build Flink sources [1]. We need to address FLINK-25250 before merging this PR. [1] https://github.com/apache/flink/blob/master/azure-pipelines.yml#L42 |
Closing the PR as per my JIRA comment. |
@zentol I have re-opened the PR per my JIRA comment. Maybe we can continue the technical discussion there. |
@zentol @yunfengzhou-hub Do you have time to review this PR? |
… instead of requiring Java 11
@reswqa Can you help review this PR? Thanks! |
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.
Thanks @lindong28, LGTM!
What is the purpose of the change
Flink 1.15 and later versions require at least Java 11 to build from sources [1], whereas the pom.xml specifies the source/target is 1.8. This inconsistency confuses users.
As mentioned in the FLINK-25247 title, the goal of that ticket is to "Inform users about deprecation". It will be better to inform users that "Java 8 is deprecated" instead of saying "Fink requires at least Java 11 to build", so that users have the right information to make the right choice for themselves.
Also note that Flink community is regularly running flink-ml benchmark for both Java 8 and Java 11 [2], which suggests that we are practically ensuring Java 8 is supported.
If we decide to official drop Java 8 support, Flink community probably should give explicit notice regarding the deprecation period so that users can be prepared for this breaking change. We can follow the Kafka website doc [3] for example, which says "Java 8, Java 11, and Java 17 are supported. Note that Java 8 support has been deprecated since Apache Kafka 3.0 and will be removed in Apache Kafka 4.0".
[1] https://nightlies.apache.org/flink/flink-docs-release-1.15/docs/flinkdev/building/
[2] http://codespeed.dak8s.net:8000/timeline/?ben=mapSink.F27_UNBOUNDED&env=2
[3] https://kafka.apache.org/documentation/
Brief change log
Update Flink doc to mention that "Java 8 is deprecated" instead of saying "Flink requires at least Java 11 to build".
Verifying this change
N/A.
Does this pull request potentially affect one of the following parts:
@Public(Evolving)
: noDocumentation