Skip to content

Git revision changed for the JDK package repository

Created by: olafurpg

Following up from https://sourcegraph.slack.com/archives/CHEKCRWKV/p1641258460351700

  • Sourcegraph version: latest website

Steps to reproduce:

  1. Visit URL https://sourcegraph.com/jdk@65983d0/-/blob/java.naming/com/sun/jndi/ldap/LdapCtx.java?L2013-2026&subtree=true

Expected behavior:

This URL loaded a few weeks ago and it should load again.

Actual behavior:

The page doesn't load, it's a 404 error.

Context

The jdk repo is automatically created from the src.zip of the JDK distribution. The commit is created here https://sourcegraph.com/github.com/sourcegraph/sourcegraph@da331f55d25ccb61e9b1d113cbf664d4d9547ee2/-/blob/cmd/gitserver/server/vcs_syncer_jvm_packages.go?L329:116&subtree=true

Note that we hardcode the date and commit author to ensure that the git commit SHA remains stable. This 404 happens because something caused the SHA to change. Possible theories:

  • we're not hardcoding all of the parameters git uses to compute the git SHA
  • the src.zip file changed, which happen for JDK upgrades. The Coursier JVM index was updated 13 days ago (https://github.com/coursier/jvm-index/commit/4a07ddf11bc6bd24ad6b145ae3367946373abe8f), making this most likely the root cause of the 404. To fix this issue we should hardcode the JVM index file so that we always use the same Java 11 version (even if that means that we get forever stuck on the same patch version of every major version). If this is the root cause, then it should only be the JDK repository that is affected (not maven/ repos)