On release-25.2, hash-sharded ALTER PRIMARY KEY gives the shard column
of the new primary index's temporary index a PUBLIC target instead of
TRANSIENT_ABSENT. The column stays PUBLIC after the temporary index is
removed. When a backup taken in that window is settled on restore,
settling asks to remove the column from the missing index. The removal
fails with a retryable error, so the settled job stays in the reverting
state forever.
Settling now leaves a column of an already removed index at its target.
cockroachdb/cockroach#146726 fixed the target in 25.3 as part of a
larger feature that is not backported, so this commit is 25.2 only.
Informs: cockroachlabs/cockroach#13378
Epic: none
Release note: None
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>