Zoltan Chovan created KUDU-3681:
-----------------------------------
Summary: Move to JDK17
Key: KUDU-3681
URL: https://issues.apache.org/jira/browse/KUDU-3681
Project: Kudu
Issue Type: Improvement
Reporter: Zoltan Chovan
Assignee: Zoltan Chovan
{*}Summary{*}: Deprecate Java 8 support and establish Java 17 as the minimum
required version for Apache Kudu Java components
h3. Background
Apache Kudu currently supports Java 8+ for both runtime and build environments,
as documented in our installation and developer guides. However, Java 8 reached
End of Public Updates in January 2019 and Extended Support will end in December
2030. Meanwhile, Java 17 is the current Long Term Support (LTS) release and
offers significant improvements in performance, security, and developer
experience.
h3. Current State
* Documentation: Java 8+ requirement listed in java/README.adoc and
docs/installation.adoc
* Build System: Gradle 7.6.4 with full Java 17 support
h3. Proposal
Officially deprecate Java 8 support and establish Java 17 as the minimum
required version for:
* Runtime environments
* Build environments
* Development environments
* CI/CD pipelines
h3. Benefits of Java 17
1. Performance Improvements:
* Enhanced garbage collection (ZGC, G1GC improvements)
* Better JIT compilation optimizations
* Reduced memory footprint
2. Security Enhancements:
* Regular security updates and patches
* Improved cryptographic APIs
* Enhanced sandboxing capabilities
3. Developer Experience:
* Modern language features (sealed classes, pattern matching, text blocks)
* Better tooling support
* Improved diagnostics and debugging
4. Ecosystem Alignment:
* Major frameworks (Spring, Spark, Hadoop) have moved to Java 17
* Better compatibility with modern libraries
* Future-proofing for Java ecosystem evolution
* Hive recently moved to Java 17 then 21 in their latest [4.1.0
release|https://github.com/apache/hive/releases/tag/rel%2Frelease-4.1.0]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)