Skip to content

[FLINK-39654][build] Add JDK 25 CI test lane (non-blocking)#28141

Draft
jackylee-ch wants to merge 1 commit into
apache:masterfrom
jackylee-ch:FLINK-39654-jdk25-ci-pipeline
Draft

[FLINK-39654][build] Add JDK 25 CI test lane (non-blocking)#28141
jackylee-ch wants to merge 1 commit into
apache:masterfrom
jackylee-ch:FLINK-39654-jdk25-ci-pipeline

Conversation

@jackylee-ch
Copy link
Copy Markdown

What is the purpose of the change

Add a non-blocking JDK 25 CI test lane to provide continuous visibility into JDK 25 readiness, building on FLINK-38474 (java25-target profile) and the compilation fixes already resolved under FLINK-37719.

This follows the same incremental approach used for JDK 17 (FLINK-15736) and JDK 21 (FLINK-33163) support.

Brief change log

  • Install Zulu JDK 25 in job_init action (GHA runners only ship JDK 17/21)
  • Add parallel JDK 25 lane in ci.yml with continue-on-error: true
  • Add workflow-caller-id to disambiguate JDK 17 vs JDK 25 build artifacts
  • Add target.java.version=25 and spotless.skip=true to java25-target profile
  • Bound -Djava.security.manager=allow to JDK 18–23 in surefire profiles and config.sh (JEP-486 permanently removes SecurityManager in JDK 24+)

Verifying this change

This change is already covered by existing tests. The CI lane itself is the verification — it will run the full test suite under JDK 25 in non-blocking mode.

Does this pull request potentially affect one of the following parts:

- Dependencies (does it add or upgrade a dependency): no
- The public API, i.e., is any changed class annotated with `@Public(Evolving)`: no
- The serializers: no
- The runtime per-record code paths (performance sensitive): no
- Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
- The S3 file system connector: no

Documentation

- Does this pull request introduce a new feature? no
- If yes, how is the feature documented? not applicable
Was generative AI tooling used to co-author this PR?

co-authed by Claude Code

Building on FLINK-38474 (java25-target profile), this adds infrastructure
to run Flink's test suite under JDK 25 in CI.

The CI lane is configured as non-blocking (continue-on-error: true) since
several components still have outstanding JDK 25 incompatibilities tracked
under FLINK-37719.

Changes:
- Add Zulu 25 installation step in job_init action (GHA runners only
  ship JDK 17/21 pre-installed)
- Add parallel JDK 25 CI lane with workflow-caller-id disambiguation
- Add target.java.version=25 and spotless.skip=true to java25-target
  profile (spotless/google-java-format not yet JDK 25 compatible)
- Bound -Djava.security.manager=allow to JDK 18-23 in surefire profiles
  and config.sh (JEP-486 permanently removes SecurityManager in JDK 24+)
@jackylee-ch jackylee-ch marked this pull request as draft May 11, 2026 13:46
@jackylee-ch jackylee-ch marked this pull request as ready for review May 11, 2026 13:46
@flinkbot
Copy link
Copy Markdown
Collaborator

flinkbot commented May 11, 2026

CI report:

Bot commands The @flinkbot bot supports the following commands:
  • @flinkbot run azure re-run the last Azure build

Copy link
Copy Markdown
Contributor

@snuyanzin snuyanzin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

usually this should be the last step once it is ready
for now it can be only compiled, however tests do not pass yet

@snuyanzin
Copy link
Copy Markdown
Contributor

moreover it doesn't do anything with azure

@jackylee-ch
Copy link
Copy Markdown
Author

usually this should be the last step once it is ready for now it can be only compiled, however tests do not pass yet

Of course, this PR is mainly to show how much work is still needed, and it can remain here until everything is completed.

@jackylee-ch jackylee-ch marked this pull request as draft May 12, 2026 00:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants