foojayio / foojayio/discoapi

oracle_open_jdk: JDK 27 GA build 35 still reported as 27-ea+35

Open
#162 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
154
Forks
17
PR merge metrics
No merged PRs in 30d

Description

JDK 27 went GA on 15 September 2026 (https://jdk.java.net/27/ now shows "OpenJDK JDK 27 GA Release Builds", build 35), but the API still reports the Oracle OpenJDK 27 package as early access.

**What I see**

`GET /disco/v3.0/packages?distribution=oracle_open_jdk&version=27&latest=available&operating_system=linux&architecture=x64&archive_type=tar.gz&package_type=jdk&release_status=ga` returns an empty result.

The same query with `release_status=ea` returns one package, `java_version` `27-ea+35`, `release_status` `ea`. Its `direct_download_uri` already points at the GA location:

```
https://download.java.net/java/GA/jdk27/55ce5470a6294008af0057ff4626d0e5/35/GPL/openjdk-27_linux-x64_bin.tar.gz
```

Meanwhile `/disco/v3.0/major_versions` lists 27 as `ga`, and the other distributions (Zulu, Liberica, Corretto, SapMachine, Oracle) already return 27 GA packages. Only `oracle_open_jdk` is behind.

**Expected**

The 27 build 35 package labelled `27+35` with `release_status` `ga`, like `26+35` and `25+36` are today.

**Probable cause**

Oracle hosted build 35 under the GA path while the page was still marked "Release-Candidate", so the package was first seen as EA. Since the filename and download URL did not change when the page switched to GA, the hourly update skips it as already known and the stored release status never gets re-evaluated. A forced refresh of the distribution should fix it.

Clients that resolve `oracle_open_jdk` with the default GA filter (for example the Gradle foojay toolchain resolver) currently cannot find JDK 27 at all. Thanks for looking into it!

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the two /disco/v3.0/packages queries and comparing them with /disco/v3.0/major_versions. Then trace the hourly update or forced-refresh path for oracle_open_jdk, focusing on how an existing package's release status is updated. Done means build 35 is returned as 27+35 with release_status ga by the default GA query, without breaking the existing package queries.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.