This task is to upgrade to 3.9.x series
Release notes https://www.gerritcodereview.com/3.9.html
notes
breaking changes
To be checked https://www.gerritcodereview.com/3.9.html#breaking-changes
This task is to upgrade to 3.9.x series
Release notes https://www.gerritcodereview.com/3.9.html
notes
breaking changes
To be checked https://www.gerritcodereview.com/3.9.html#breaking-changes
Status | Subtype | Assigned | Task | ||
---|---|---|---|---|---|
Resolved | hashar | T354887 Upgrade to Gerrit 3.9 | |||
Resolved | hashar | T364342 Switch Gerrit from Java 11 to Java 17 |
Change #1036999 had a related patch set uploaded (by Hashar; author: Hashar):
[operations/software/gerrit@wmf/stable-3.9] Merge tag 'v3.9.5' into wmf/stable-3.9
Change #1036999 merged by jenkins-bot:
[operations/software/gerrit@wmf/stable-3.9] Merge tag 'v3.9.5' into wmf/stable-3.9
Change #1037041 had a related patch set uploaded (by Hashar; author: Hashar):
[operations/software/gerrit@deploy/wmf/stable-3.9] Gerrit 3.9.5, rebuild plugins and update TypeScript API
I have scheduled the upgrade for Monday June 3rd at 8:00am UTC and I have announced it on wikitech-l.
Calendar entry: https://wikitech.wikimedia.org/wiki/Deployments#deploycal-item-20240603T0800
Change #1037041 merged by jenkins-bot:
[operations/software/gerrit@deploy/wmf/stable-3.9] Gerrit 3.9.5, rebuild plugins and update TypeScript API
Mentioned in SAL (#wikimedia-operations) [2024-06-03T08:08:13Z] <hashar@deploy1002> Started deploy [gerrit/gerrit@7838134]: Gerrit to v3.9.5 on gerrit2002 - T354887
Mentioned in SAL (#wikimedia-operations) [2024-06-03T08:08:21Z] <hashar@deploy1002> Finished deploy [gerrit/gerrit@7838134]: Gerrit to v3.9.5 on gerrit2002 - T354887 (duration: 00m 08s)
Mentioned in SAL (#wikimedia-operations) [2024-06-03T08:08:35Z] <hashar@deploy1002> Started deploy [gerrit/gerrit@7838134]: Gerrit to v3.9.5 on gerrit1003 - T354887
Mentioned in SAL (#wikimedia-operations) [2024-06-03T08:08:40Z] <hashar@deploy1002> Finished deploy [gerrit/gerrit@7838134]: Gerrit to v3.9.5 on gerrit1003 - T354887 (duration: 00m 05s)
Change #1037922 had a related patch set uploaded (by Hashar; author: Hashar):
[operations/software/gerrit@deploy/wmf/stable-3.9] Revert "Gerrit 3.9.5, rebuild plugins and update TypeScript API"
Change #1037922 merged by jenkins-bot:
[operations/software/gerrit@deploy/wmf/stable-3.9] Revert "Gerrit 3.9.5, rebuild plugins and update TypeScript API"
Mentioned in SAL (#wikimedia-operations) [2024-06-03T08:15:24Z] <hashar@deploy1002> Started deploy [gerrit/gerrit@c93e47d]: Revert Gerrit back to 3.8.6 - T354887
Mentioned in SAL (#wikimedia-operations) [2024-06-03T08:15:29Z] <hashar@deploy1002> Finished deploy [gerrit/gerrit@c93e47d]: Revert Gerrit back to 3.8.6 - T354887 (duration: 00m 05s)
I have merged the change to upgrade to 3.9, stopped Gerrit on the replica gerrit2002 and upon running the initialization (java -jar gerrit.war init):
Error: LinkageError occurred while loading main class Main java.lang.UnsupportedClassVersionError: Main has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0
That is the gerrit.war for 3.9.5 not supporting Java 11 despite the 3.9 release notes stating:
Java 17
The language level used for Gerrit source code stays on Java 11, however, Gerrit is built and distributed for Java 17, which is the recommended JVM version for running it in production.
Which I have interpreted as Java 17 being optional?
I ended up reverting the change in deploy/wmf/stable-3.9 and on the deployment server I checked back deploy/wmf/stable-3.8 and redeployed from it. I have eached out to Upstream to clarify https://discord.com/channels/775374026587373568/775374026587373571/1247104042711388190
I interpret
The language level used for Gerrit source code stays on Java 11, however, Gerrit is built and distributed for Java 17, which is the recommended JVM version for running it in production.
as:
Google provides builds that require Java 17. You can continue to use Java 11 for now, but you need to build Gerrit yourself in that case.
(If you’ve already got the same answer on Discord: sorry, I’m not on Discord.)
Couldn’t we just update to Java 17? I know this is not something to figure out within a deployment window, but it’s probably the safest choice to use the same version as Google does. OpenJDK 17 is available in Debian Bullseye and Bookworm.
P.S. I’m eager to use the cool new user-suggested edits feature of Gerrit 3.9. :)
Change #1039610 had a related patch set uploaded (by Hashar; author: Hashar):
[operations/software/gerrit@deploy/wmf/stable-3.9] Gerrit 3.9.5, rebuild plugins and update TypeScript API
I have REscheduled the upgrade for Monday June 10th at 8:00am UTC and I have announced it on wikitech-l.
Calendar entry: https://wikitech.wikimedia.org/wiki/Deployments#deploycal-item-20240610T0800
Icinga downtime and Alertmanager silence (ID=223c90ba-5f7b-44d5-8c87-8358a481d5e2) set by jelto@cumin1002 for 1:00:00 on 1 host(s) and their services with reason: Gerrit upgrade
gerrit2002.wikimedia.org
Icinga downtime and Alertmanager silence (ID=a4047bc3-8a75-4f46-bcb3-3d1a9938f9cc) set by jelto@cumin1002 for 1:00:00 on 1 host(s) and their services with reason: Gerrit upgrade
gerrit1003.wikimedia.org
Change #1039610 merged by jenkins-bot:
[operations/software/gerrit@deploy/wmf/stable-3.9] Gerrit 3.9.5, rebuild plugins and update TypeScript API
The upgrade:
There is a slight regression with Firefox and Safari T367029: "Press c to comment" is placed incorrectly when using Firefox 126 and 128 on macOS
Mentioned in SAL (#wikimedia-releng) [2024-06-12T06:47:55Z] <hashar> gerrit: changed HEAD of operations/software/gerrit from deploy/wmf/stable-3.8 to deploy/wmf/stable-3.9 # T354887
Mentioned in SAL (#wikimedia-releng) [2024-06-13T14:50:43Z] <hashar> gerrit: archived Gerrit (Gerrit 3.9) milestone # T354887