Remove Java version limit for classic Java runners
- Dominant language
- Java
- Stars
- 8.7k
- Forks
- 4.7k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 196
Description
It seems there's an artificial restriction in [https://github.com/apache/beam/blob/master/runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/Environments.java#L119](https://github.com/apache/beam/blob/master/runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/Environments.java#L119) that's preventing Beam from running natively on Java \> 11. This restriction should only apply when trying to use the portable runner, but it's enforced everywhere due to a constant failing to initialize there.
Imported from Jira [BEAM-11816](https://issues.apache.org/jira/browse/BEAM-11816). Original Jira may contain additional context.
Reported by: nirga.
Contributor guide
Research direction
Start at runners/core-construction-java/src/main/java/org/apache/beam/runners/core/construction/Environments.java around line 119 and inspect how the Java version restriction and portable-runner constant initialization interact. Confirm the intended distinction between native classic runners and the portable runner. Done means classic Java runners can run natively on Java versions above 11 while the portable-runner restriction remains enforced.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100