opensearch-project / opensearch-project/data-prepper
Update Java support - JDK 21
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 374
- Forks
- 354
- Avg merge
- 3d 18h
- Merged PRs (30d)
- 8
Description
Background
Data Prepper uses the Temurin releases for packages with bundled JDKs. Temurin has active LTS support for both Java 11 and 17. Java 21 is planned is a planned LTS release coming in Sep 2023.
Proposal
Update Data Prepper's supported Java versions to 21 and 17. As a breaking change, Data Prepper can stop supporting Java 11 entirely. This also means that developers can start using features which are available only in Java 17 and above.
We can also run some performance tests against Java 21 after it is released. This can help us determine if the default bundled JDK should be 21 instead of 17. Previously we found a performance gain running on Java 17 over 11 which motivated the update to bundle 17 instead.
Additionally, the Data Prepper builds can start to run against the Java 21 to ensure forward compatibility before it is the official version.
Tasks
- #3267
- #3329
- #3330
- Performance evaluation of Data Prepper on Java 21 (once available)
- Bundle Data Prepper with Java 21 (once available; possibly breaking change)
- #3493 (breaking change)
Reference
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the two unchecked tasks: performance evaluation on Java 21 and bundling Data Prepper with Java 21, using the linked Temurin support reference and existing completed task issues for context. Done means evaluating Java 21 performance, deciding the bundled JDK version, and completing the Java 21 bundle update while accounting for the Java 11 support change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 28/100