Closed
Description
Feature Description
This is a tracking issue for the upcoming release of Vitess 21. Aims to hos pending todos and further document the process.
21.0 Team: Rohit (Release Manager), Shlomi (Previous RM), Florent (Release Wizard and Next RM)
Clarification: The vitess-releaser
is automates most of the release process including creating release-related PRs. This PR is a complement to it, for tracking progress and ongoing issues/todos, but it will not be used by the tool.
Before/Post GA
- Check benchmarks run after Florent is done with current benchmarks work
- Update Summary doc with changes to public API (GRPC / protos) in v21 wrt v20
- CNCF Blog Post final Google Docs (by 18 Oct)
- Summary verification (by Deepthi by 25 Oct)
- Regenerate cobra docs (Oct 29)
- Florent to validate that benchmarks are running on the v21 tag once he is done with his current development there
- Florent to post in twitter
- Team: needs to update/decide on the GRPC changes to be added to the summary ([Direct PR][release-21.0] Add RPC changes segment in the summary doc #17034) and then merge once done
- Rohit: PR to lift code freeze and merge all approved release-21.0 PRs
- Rohit: announce EOL for v18. Document and remove references to it "everywhere"
Backports for v21 RC2
- [Direct PR][release note]: Atomic Distributed Transaction #17079
- [release-21.0] Add support for
MultiEqual
opcode for lookup vindexes. (#16975) #17041 - [release-21.0] Build
vttestserver
in GHA and send Slack message on Docker Build failure (#16963) #17047 - [release-21.0] Use proper zstd decoder pool for binlog event compression handling (#17042) #17045
- [Direct PR] [release-21.0] Revert Errant GTID detection in vttablets #17019
- [Direct PR] [release-21.0] Augment
PrimaryStatus
to also send Server UUID #17032 - [release-21.0] Fix the release workflow (#16964) #17020
- [release-21.0] VReplication: Support reversing read-only traffic in vtctldclient (#16920) #17015
- [release-21.0] VReplication: Restore previous minimal e2e test behavior (#17016) #17017
- [release-21.0] fix: Infinite logs in case of non-existent stream logs (#17004) #17014
- [release-21.0] [Direct PR] bugfix: add HAVING columns inside derived tables (#16976) #16980
- [release-21.0] [Direct PR] fix: route engine to handle column truncation for execute after lookup (#16981) #16986
- [release-21.0] Add missing changelog for PR #16852 (#17002) #17006
- [release-21.0] Fix deadlock between health check and topology watcher (#16995) #17010
- [release-21.0] fix releasing the global read lock when mysqlshell backup fails (#17000) #17012
- [release-21.0] [Direct PR] Add RPC to read the reparent journal position #16982
Todos
- Vitess releaser: fix docker link
- During RC-2 update the code examples of the vtop
release-2.14
branch to userc2
- Update vitess-releaser for cobradocs generation: pre-release
- Update vitess-releaser checklist for vttestserver image generation: post-release
- Update vitess-releaser checklist for removing Bypass Protection from
vitess
repo: post-release - Add to vitess-releaser checklist for verifying that
/releases
artifacts are created: post-release - Add to vitess-releaser checklist for GA to message CNCF about blog post (already there?)
- Announce on OSS Slack, upcoming code freeze and release two weeks before code freeze: https://vitess.slack.com/archives/C0PQY0PTK/p1727123807991129
- Vitess Releaser changes for v21 Initial set of changes for v21 release vitess-releaser#112
- Announcement on OSS Slack two days before code freeze
- Deepthi to check release notes Oct 2nd
- CNCF Blog Post initial
(Potential) Backports for v21 RC1
- [release-21.0] Fix flag name typo from #16852 (#16921) #16923
- [release-21.0] fix issue with json unmarshalling of operators with space in them #16933
- [release-21.0] VTGate MoveTables Buffering: Fix panic when buffering is disabled (#16922) #16936
- [release-21.0] Bump commons-io:commons-io from 2.7 to 2.14.0 in /java (#16889) #16932
- [release-2.14] Support customisation of docker images per-keyspace planetscale/vitess-operator#613
Issues to Merge before RC code freeze
- Making Reshard work smoothly with Atomic Transactions #16844
- copy editing changes to summary #16880
- Fix: Errant GTID detection on the replicas when they set replication source #16833
- VReplication: Support automatically replacing auto_inc cols with sequences #16860
- Fix race in
replicationLagModule
ofgo/vt/throttle
#16078 - MySQL errors:
ERInnodbIndexCorrupt
#16851 - VTTablet: smartconnpool: notify all expired waiters #16897
- Query serving: incorporate mirror query results in log stats, fix mirror query max lag bug #16879
- Add blurb about experimental 8.4 support #16886
- Errant GTID Counts metric in VTOrc #16829
- Move concurrent connection dial limit out of
healthcheck
. #16378 - Add
ChangeTabletTags
RPC tovtctl
,ChangeTags
RPC tovttablet
#16857
Stuff to add to summary.md
- atomic transactions
- mysql 8.4 support
Release artifacts
The goal of a Vitess release is to generate the following artifacts for every release including GA and intermediate RCs (and subsequent patches).
- A git hash that marks the commit at which the release is cut.
- Vitess binary and operator Images should be pushed to Docker Hub: should be visible at https://hub.docker.com/u/vitess like https://hub.docker.com/r/vitess/lite/tags?name=v20
- Java packages to be pushed to Maven/SonaType
- Notifications to Twitter/Slack
- CNCF Blog post
- Updated vitess.io Website documentation
Prep Work
- Monitor PRs that need to go into the release from a few days before
- Validate release notes
Dates
Tentative dates, pending schedule alignment:
- Before October 8: Pre-Requisites for a release (check environment, check GH rights, check release notes, etc)
- Tuesday 8 October: release-21.0 Code Freeze (Zoom Meeting needed)
- Between the 8th and 14h: v21.0.0 RC-1 Pre-Requisites
- Monday 14 October: v21.0.0 RC-1 Pre-Release (Zoom Meeting needed)
- Tuesday 15 October: v21.0.0 RC-1 Release (Zoom Meeting needed)
- Monday 21 October: v21.0.0 RC-2 Pre-Release (optional) (Zoom Meeting needed)
- Tuesday 22 October: v21.0.0 RC-2 Release (optional) (Zoom Meeting needed)
- Between the 22nd and 28h: v21.0.0 GA Pre-Requisites
- Monday 28 October: v21.0.0 GA Pre-Release (Zoom Meeting needed)
- Tuesday 29 October: v21.0.0 GA Release (Zoom Meeting needed)