-
Notifications
You must be signed in to change notification settings - Fork 477
Add page for updated PCR upgrade info #20729
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 3 commits
Commits
Show all changes
16 commits
Select commit
Hold shift + click to select a range
6020673
Added pcr upgrade page
peachdawnleach 9071e7d
summary length
peachdawnleach 1d98a00
Merge branch 'main' into 20251014-DOC-14967-reader-vc-upgrade
peachdawnleach 0594686
Quick changes from review
peachdawnleach 8a2903c
More changes from review
peachdawnleach a58a053
More changes from review
peachdawnleach eb0cf17
Back/forward port
peachdawnleach 7b46171
Removed broken links
peachdawnleach 91915b6
Updated language
peachdawnleach 62b74c5
Docs review changes
peachdawnleach 0cf55c9
Added code snippets
peachdawnleach bd9b578
Merge branch 'main' into 20251014-DOC-14967-reader-vc-upgrade
peachdawnleach 824bc5a
Fixed terminology
peachdawnleach 937c049
Merge branch '20251014-DOC-14967-reader-vc-upgrade' of github.com:coc…
peachdawnleach c129f84
Final small changes
peachdawnleach 9b38a8c
Broken link
peachdawnleach File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,87 @@ | ||
| --- | ||
| title: Upgrade with Physical Cluster Replication Enabled | ||
| summary: Upgrade your primary and standby clusters when using PCR. | ||
| toc: true | ||
| docs_area: manage | ||
| --- | ||
|
|
||
| When [**physical cluster replication (PCR)**]({% link {{ page.version.version }}/physical-cluster-replication-overview.md %}) is enabled, you must use the process on this page to upgrade your clusters. This process ensures that the standby cluster upgrades before the primary cluster. | ||
|
|
||
| {{site.data.alerts.callout_info}} | ||
| The entire standby cluster must be at the same version as, or one version ahead of, the primary's virtual cluster. Within the primary and standby CockroachDB clusters, the _system virtual cluster (SystemVC)_ must be at a cluster version greater than or equal to the _app virtual cluster (AppVC)_. | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| {{site.data.alerts.end}} | ||
|
|
||
| ## Upgrade primary and standby clusters | ||
|
|
||
| To upgrade your primary and standby clusters: | ||
|
|
||
| 1. [Upgrade the binaries]({% link {{ page.version.version }}/upgrade-cockroach-version.md %}#perform-a-major-version-upgrade) on the standby cluster. Replace the binary on each node of the cluster and restart the node. | ||
|
|
||
| After upgrading the binaries on the standby cluster, the primary cluster is not upgradable until the standby cluster's upgrade has finalized. | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| If auto-finalization is enabled, the upgrade auto-finalizes after 72 hours. | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| 1. If auto-finalization is disabled, [finalize]({% link {{ page.version.version }}/upgrade-cockroach-version.md %}#finalize-a-major-version-upgrade-manually) the upgrade on the standby cluster's SystemVC. | ||
|
|
||
| {{site.data.alerts.callout_info}} | ||
| If you need to [roll back]({% link {{ page.version.version }}/upgrade-cockroach-version.md %}#roll-back-a-major-version-upgrade) an upgrade, you must do so before the upgrade has been finalized. | ||
| {{site.data.alerts.end}} | ||
|
|
||
| 1. If auto-finalization is disabled, [finalize]({% link {{ page.version.version }}/upgrade-cockroach-version.md %}#finalize-a-major-version-upgrade-manually) the upgrade on the standby cluster's AppVC. | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| After you have finalized the upgrade on the standby cluster's AppVC, the clusters can remain in this state for an indefinite amount of time. You can wait to upgrade the primary cluster as long as is needed. | ||
|
|
||
| 1. [Upgrade the binaries]({% link {{ page.version.version }}/upgrade-cockroach-version.md %}#perform-a-major-version-upgrade) on the primary cluster. Replace the binary on each node of the cluster and restart the node. | ||
|
|
||
| After upgrading the binaries on the primary cluster, the standby cluster is not upgradable until the primary cluster's upgrade has finalized. | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| 1. If auto-finalization is disabled, [finalize]({% link {{ page.version.version }}/upgrade-cockroach-version.md %}#finalize-a-major-version-upgrade-manually) the upgrade on the primary cluster's SystemVC. | ||
|
|
||
| {{site.data.alerts.callout_info}} | ||
| If you need to [roll back]({% link {{ page.version.version }}/upgrade-cockroach-version.md %}#roll-back-a-major-version-upgrade) an upgrade, you must do so before the upgrade has been finalized. | ||
| {{site.data.alerts.end}} | ||
|
|
||
| 1. If auto-finalization is disabled, [finalize]({% link {{ page.version.version }}/upgrade-cockroach-version.md %}#finalize-a-major-version-upgrade-manually) the upgrade on the primary cluster's AppVC. | ||
|
|
||
| ## Upgrade ReaderVC | ||
|
|
||
| If you have a [_reader virtual cluster (ReaderVC)_]({% link {{ page.version.version }}/read-from-standby.md %}), use the following steps to upgrade it by dropping and re-creating it: | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| 1. After upgrading the AppVCs on your primary and standby clusters, wait for the replicated time to pass the time at which the upgrade completed. | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| 1. On the standby cluster, stop the ReaderVC service: | ||
|
|
||
| {% include_cached copy-clipboard.html %} | ||
| ~~~ sql | ||
| ALTER VIRTUAL CLUSTER <readervc-name> STOP SERVICE | ||
alicia-l2 marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| ~~~ | ||
|
|
||
| 1. Drop the ReaderVC: | ||
|
|
||
| {% include_cached copy-clipboard.html %} | ||
| ~~~ sql | ||
| DROP VIRTUAL CLUSTER <readervc-name> | ||
| ~~~ | ||
|
|
||
| 1. On the AppVC, double-check that the standby cluster's AppVC has upgraded: | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| {% include_cached copy-clipboard.html %} | ||
| ~~~ sql | ||
| SHOW CLUSTER SETTING version | ||
| ~~~ | ||
|
|
||
| 1. Back on the standby cluster, if the version is as expected, re-create the ReaderVC: | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| {% include_cached copy-clipboard.html %} | ||
| ~~~ sql | ||
| ALTER VIRTUAL CLUSTER dest-system SET REPLICATION READ VIRTUAL CLUSTER | ||
| ~~~ | ||
|
|
||
| ## Failover and fast failback during upgrade | ||
|
|
||
| If you need to perform a [failover]({% link {{ page.version.version }}/failover-replication.md %}) while upgrading your clusters, you can do that using the normal process. | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| However, after performing a failover you cannot perform a [fast failback]({% link {{ page.version.version }}/failover-replication.md %}#failback) to the original primary cluster during the upgrade process. This is because at times during the upgrade the standby cluster is ahead of the primary cluster. | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| ## Patch deferrals | ||
peachdawnleach marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| Patch versions are not relevant when determining PCR compatibility. There is no need to consider PCR compatibility when upgrading to a specific patch version within a major version. | ||
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.