det101 opened a new issue, #17244: URL: https://github.com/apache/dolphinscheduler/issues/17244
### Search before asking - [x] I had searched in the [DSIP](https://github.com/apache/dolphinscheduler/issues/14102) and found no similar DSIP. ### Motivation Long - Term Support (LTS): Java 17 is the latest LTS version, which means it will receive long - term support and updates. Performance Improvement: Java 17 introduces a variety of performance improvements, including optimizations in garbage collection and JIT compilation. New Features: Java 17 brings many new features, such as pattern matching, records, and sealed classes, all of which can make code more concise and readable. Enhanced Security: Java 8 has been discontinued, and Java 11 will no longer be updated after 2026. Security vulnerabilities will continue to increase. Upgrading to Java 17 can ensure the security of applications. Other Projects: The latest versions of many projects currently support JDK 17 and JDK 21, such as Spring, Spark, StreamPack, Doris, and so on. ### Design Detail **Upgrade Plan** DS has already supported JDK 11, so the upgrade to 1 should7 not be too difficult. We will proceed with the principle of forward compatibility and minimal code changes, with the ultimate goal of enabling the project to run on JDK 8, JDK 11, and JDK 17. **Before starting the upgrade, I will conduct the following research:** 1. Evaluate static code compatibility issues using various tools such as jdeps, jdeprscan, and EMT4J to get a rough overview of the changes needed for the project. Discuss the results with the PMC. ### Compatibility, Deprecation, and Migration Plan _No response_ ### Test Plan 1. Compile with Java 8 and conduct integration tests in a Java 17 environment to identify and resolve issues. ``` - All modifications are made with the principle of forward compatibility. If compatibility is not possible, provide clear explanations. - Conduct integration testing of the entire process to ensure that all tasks can be executed normally. ``` 2. Verify whether E2E and UT tests can be conducted under JDK 17 and resolve any issues found. 3. Update community documentation. ### Code of Conduct - [x] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct) -- 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]
