release-22.1: sql/backfill: include virtual key columns in column backfiller #87272
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Backport 1/1 commits from #87207.
/cc @cockroachdb/release
We need these columns to encode the row. This rather egregious bug meant that
any table with a primary key which included a virtual column could not have
any columns added or dropped using the legacy schema changer's column
backfiller.
Backports will fix #80780
Backports will fix #86889
Release justification: Serious bug fix
Release note (bug fix): A bug in the column backfiller, which is used to add
or remove columns from tables, failed to account for the need to read virtual
columns which were part of a primary key. Hash-sharded indexes, starting in
22.1, use virtual columns. Any hash-sharded table created in 22.1 or any
table created with a virtual column as part of its primary key would
indefinitely fail to complete a schema change which adds or removes
columns. This bug has been fixed.