Sbaia opened a new pull request, #678: URL: https://github.com/apache/doris-flink-connector/pull/678
# Proposed changes Issue Number: close #677 ## Problem Summary Flink 2.x artifacts target Java 17, but the connector did not build, test, or document runtime compatibility with JDK 21. The interactive build script also rejected JDK 21. This change keeps Java 17 bytecode compatibility while adding focused JDK 21 evidence without creating a full container-test Cartesian matrix. ## Changes - Compile Flink 2.x with `--release 17` and verify representative classes remain classfile major 61. - Package and run unit tests on JDK 21 for Flink 2.0, 2.1, and 2.2. - Run the Arrow, Stream Load, Group Commit, checkpoint, and failover IT cases on JDK 21 for Flink 2.1 and 2.2. - Run the Flink 2.2 Doris-to-Doris E2E case on JDK 17 and JDK 21. - Accept exactly JDK 17 or JDK 21 for interactive Flink 2 builds while preserving the JDK 8/Flink 1 contract. - Keep JDK 21 runtime wording experimental for Flink 2.1 and 2.2; Flink 2.0 remains documented as JDK 17-only. - Update test-only Byte Buddy and formatter tooling where required by JDK 21, without changing production dependencies. ## Test plan - [x] JDK 21 `clean package` passes for Flink 2.0, 2.1, and 2.2. - [x] JDK 17 Flink 2.2 package, Spotless, and Checkstyle pass. - [x] 292 base tests and 12 Flink 2 adapter tests pass on JDK 21/Flink 2.2. - [x] IT/E2E sources compile on JDK 21 for Flink 2.1 and 2.2. - [x] Representative base and adapter classes report classfile major 61. - [x] `build.sh` accepts JDK 17/21 and rejects JDK 22, malformed versions, and JDK 17 for Flink 1. - [ ] Hosted Doris container IT/E2E matrix passes in this PR. ## Checklist (Required) 1. Does it affect the original behavior: No production connector behavior; build JDK acceptance and CI coverage change. 2. Has unit tests been added: No Need; the existing unit, IT, and E2E suites are exercised on JDK 21. 3. Has document been added or modified: Yes. 4. Does it need to update dependencies: Yes, test/build tooling only. 5. Are there any changes that cannot be rolled back: No. ## Further comments The matrix is intentionally asymmetric: package tests cover Flink 2.0/2.1/2.2, focused JDK 21 IT covers 2.1/2.2, and one JDK 21 E2E canary covers Flink 2.2. This provides credible modularization/runtime evidence while containing CI cost and flakiness. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
