cockroachdb / cockroach

CockroachDB — the cloud native, distributed SQL database designed for high availability, effortless scale, and control over data placement.
https://www.cockroachlabs.com
Other
30.16k stars 3.82k forks source link

release-24.3: upgrade: adding is_draining to system.sql_instance can fail #135832

Closed fqazi closed 1 day ago

fqazi commented 1 day ago

Backport 1/1 commits from #135737.

/cc @cockroachdb/release


Previously, the logic to add the is_draining column to the system.sql_instance descriptor would copy the bootstrap descriptor directly. While this works fine for non-multiregion system databases, this approach breaks for multi-region system databases. This is because bootstrap descriptors do not have multi-region modifications applied on top. To address this, this change modifies the upgrade to use ALTER TABLE ADD COLUMN.

Fixes: #135736

Release note: None

Release justification: low risk fix for an issue that can prevent version finalization with MR system databases

blathers-crl[bot] commented 1 day ago

Thanks for opening a backport.

Please check the backport criteria before merging:

If your backport adds new functionality, please ensure that the following additional criteria are satisfied: - [ ] There is a high priority need for the functionality that cannot wait until the next release and is difficult to address in another way. - [ ] The new functionality is additive-only and only runs for clusters which have specifically “opted in” to it (e.g. by a cluster setting). - [ ] New code is protected by a conditional check that is trivial to verify and ensures that it only runs for opt-in clusters. State changes must be further protected such that nodes running old binaries will not be negatively impacted by the new state (with a mixed version test added). - [ ] The PM and TL on the team that owns the changed code have signed off that the change obeys the above rules. - [ ] Your backport must be accompanied by a post to the appropriate Slack channel (#db-backports-point-releases or #db-backports-XX-X-release) for awareness and discussion.

Also, please add a brief release justification to the body of your PR to justify this backport.

cockroach-teamcity commented 1 day ago

This change is Reviewable