From bdd224e9b8617ea7bd08d3dc8ba51dbafa5cccae Mon Sep 17 00:00:00 2001 From: Tobias Schwarz Date: Wed, 27 Jan 2021 15:46:16 +0100 Subject: [PATCH 1/9] Upgrade descriptions for cosmoshub-3 --- docs/migration/README.md | 1 + docs/migration/cosmoshub-3.md | 190 ++++++++++++++++++++++++++++++++++ 2 files changed, 191 insertions(+) create mode 100644 docs/migration/cosmoshub-3.md diff --git a/docs/migration/README.md b/docs/migration/README.md index 10b8481d14d..d9edb94eb2e 100644 --- a/docs/migration/README.md +++ b/docs/migration/README.md @@ -8,3 +8,4 @@ parent: This directory houses Cosmos Hub major upgrade migration instructions. - [Upgrading from `cosmoshub-2` to `cosmoshub-3`](cosmoshub-2.md) +- [Upgrading from `cosmoshub-3` to `cosmoshub-4`](cosmoshub-3.md) \ No newline at end of file diff --git a/docs/migration/cosmoshub-3.md b/docs/migration/cosmoshub-3.md new file mode 100644 index 00000000000..189a1128cb0 --- /dev/null +++ b/docs/migration/cosmoshub-3.md @@ -0,0 +1,190 @@ +# Cosmos Hub 3 Upgrade Instructions + +The following document describes the necessary steps involved that full-node operators +must take in order to upgrade from `cosmoshub-3` to `cosmoshub-4`. The Tendermint team +will post an official updated genesis file, but it is recommended that validators +execute the following instructions in order to verify the resulting genesis file. + +There is a strong social consensus around proposal `Cosmos Hub 4 Upgrade Proposal` +on `cosmoshub-3`. Following proposals #[27](https://www.mintscan.io/cosmos/proposals/27), #[35](https://www.mintscan.io/cosmos/proposals/35) and #[36](https://www.mintscan.io/cosmos/proposals/36). +This indicates that the upgrade procedure should be performed on `February 18, 2021 at 06:00 UTC`. + + - [Preliminary](#preliminary) + - [Major Updates](#major-updates) + - [Risks](#risks) + - [Recovery](#recovery) + - [Upgrade Procedure](#upgrade-procedure) + - [Notes for Service Providers](#notes-for-service-providers) + +## Preliminary + +Many changes have occurred to the Cosmos SDK and the Gaia application since the latest +major upgrade (`cosmoshub-3`). These changes notably consist of many new features, +protocol changes, and application structural changes that favor developer ergonomics +and application development. + +First and foremost, [IBC](https://docs.cosmos.network/master/ibc/overview.html) following +the [Interchain Standads](https://github.com/cosmos/ics#ibc-quick-references) will be enabled. +This upgrade comes with several improvements in efficiency, node synchronization and following blockchain upgrades. +More details on the [Stargate Website](https://stargate.cosmos.network/). + +__[Gaia](https://github.com/cosmos/gaia) application v4.0.0 is +what full node operators will upgrade to and run in this next major upgrade__. +Following Cosmos SDK version v0.41.0 and Tendermint v0.34.3. + +## Major Updates + +There are many notable features and changes in the upcoming release of the SDK. Many of these +are discussed at a high level +[here](https://github.com/cosmos/stargate). + +Some of the biggest changes to take note on when upgrading as a developer or client are the the following: + +- **Protocol Buffers**: Initially the Cosmos SDK used Amino codecs for nearly all encoding and decoding. +In this version a major upgrade to Protocol Buffers have been integrated. It is expected that with Protocol Buffers +applications gain in speed, readability, convinience and interoperability with many programming languages. +[Read more](https://github.com/cosmos/cosmos-sdk/blob/master/docs/migrations/app_and_modules.md#protocol-buffers) +- **CLI**: The CLI and the daemon for a blockchain were seperated in previous versions of the Cosmos SDK. This +led to a `gaiad` and `gaiacli` binary which were seperated and could be used for different interactions with the +blockchain. Both of these have been merged into one `gaiad` which now supports the commands the `gaiacli` previously +supported. + +## Risks + +As a validator performing the upgrade procedure on your consensus nodes carries a heightened risk of +double-signing and being slashed. The most important piece of this procedure is verifying your +software version and genesis file hash before starting your validator and signing. + +The riskiest thing a validator can do is discover that they made a mistake and repeat the upgrade +procedure again during the network startup. If you discover a mistake in the process, the best thing +to do is wait for the network to start before correcting it. If the network is halted and you have +started with a different genesis file than the expected one, seek advice from a Tendermint developer +before resetting your validator. + +## Recovery + +Prior to exporting `cosmoshub-3` state, validators are encouraged to take a full data snapshot at the +export height before proceeding. Snapshotting depends heavily on infrastructure, but generally this +can be done by backing up the `.gaiacli` and `.gaiad` directories. + +It is critically important to back-up the `.gaiad/data/priv_validator_state.json` file after stopping your gaiad process. This file is updated every block as your validator participates in a consensus rounds. It is a critical file needed to prevent double-signing, in case the upgrade fails and the previous chain needs to be restarted. + +In the event that the upgrade does not succeed, validators and operators must downgrade back to +gaia v2.0.14 with v0.37.15 of the _Cosmos SDK_ and restore to their latest snapshot before restarting their nodes. + +## Upgrade Procedure + +__Note__: It is assumed you are currently operating a full-node running gaia v2.0.14 with v0.37.15 of the _Cosmos SDK_. + +- The version/commit hash of Gaia v2.0.14: `86343f24f39dbc800922e5fb296b77b9d30ebaae` + +1. Verify you are currently running the correct version (v2.0.14) of _gaiad_: + + ```bash + $ gaiad version --long + name: gaia + server_name: gaiad + client_name: gaiacli + version: 2.0.14 + commit: 86343f24f39dbc800922e5fb296b77b9d30ebaae + build_tags: netgo,ledger + go: go version go1.15 darwin/amd64 + ``` + +2. Make sure your chain halts at the right time and date: + February 18, 2021 at 06:00 UTC is in UNIX seconds: `1613628000` + + ```bash + perl -i -pe 's/^halt-time =.*/halt-time = 1613628000/' ~/.gaiad/config/app.toml + ``` + +3. Export existing state from `cosmoshub-3`: + + **NOTE**: It is recommended for validators and operators to take a full data snapshot at the export + height before proceeding in case the upgrade does not go as planned or if not enough voting power + comes online in a sufficient and agreed upon amount of time. In such a case, the chain will fallback + to continue operating `cosmoshub-3`. See [Recovery](#recovery) for details on how to proceed. + + Before exporting state via the following command, the `gaiad` binary must be stopped! + + ```bash + $ gaiad export --for-zero-height --height= > cosmoshub_3_genesis_export.json + ``` + +4. Verify the SHA256 of the (sorted) exported genesis file: + + ```bash + $ jq -S -c -M '' cosmoshub_3_genesis_export.json | shasum -a 256 + [SHA256_VALUE] cosmoshub_3_genesis_export.json + ``` + +5. At this point you now have a valid exported genesis state! All further steps now require +v4.0.0 of [Gaia](https://github.com/cosmos/gaia). +Cross check your genesis hash with other peers (other validators) in the chat rooms. + + **NOTE**: Go [1.15+](https://golang.org/dl/) is required! + + ```bash + $ git clone https://github.com/cosmos/gaia.git && cd gaia && git checkout v4.0.0; make install + ``` + +6. Verify you are currently running the correct version (v4.0.0) of the _Gaia_: + +- The version/commit hash of Gaia v4.0.0: `2bb04266266586468271c4ab322367acbf41188f` +- The upgrade time as agreed upon by governance: **February 18, 2021 at 06:00 UTC** + + ```bash + $ gaiad version --long + name: gaia + server_name: gaiad + version: 4.0.0 + commit: 2bb04266266586468271c4ab322367acbf41188f + build_tags: netgo,ledger + go: go version go1.15 darwin/amd64 + build_deps: + ... + ``` + +7. Migrate exported state from the current v2.0.14 version to the new v4.0.0 version: + + ```bash + $ gaiad migrate cosmoshub_3_genesis_export.json --chain-id=cosmoshub-4 --genesis-time=[PLACEHOLDER]> genesis.json + ``` + + Genesis time should be computed relative to the blocktime of `2,902,000`. The genesis time + shall be the upgrade time of `2021-02-18T06:00:00Z` + `60` minutes with the subseconds truncated. + + **2021-02-18T07:00:00Z** + + +8. Verify the SHA256 of the final genesis JSON: + + ```bash + $ jq -S -c -M '' genesis.json | shasum -a 256 + [SHA256_VALUE] genesis.json + ``` + +9. Reset state: + + **NOTE**: Be sure you have a complete backed up state of your node before proceeding with this step. + See [Recovery](#recovery) for details on how to proceed. + + ```bash + $ gaiad unsafe-reset-all + ``` + +10. Move the new `genesis.json` to your `.gaiad/config/` directory + +## Notes for Service Providers + +# Migrations + +These chapters contains all the migration guides to update your app and modules to Cosmos v0.40 Stargate. + +1. [App and Modules Migration](https://github.com/cosmos/cosmos-sdk/blob/master/docs/migrations/app_and_modules.md) +1. [Chain Upgrade Guide to v0.40](https://github.com/cosmos/cosmos-sdk/blob/master/docs/migrations/chain-upgrade-guide-040.md) +1. [REST Endpoints Migration](https://github.com/cosmos/cosmos-sdk/blob/master/docs/migrations/rest.md) + +If you want to test the procedure before the update happens on 18th of February, please see this post accordingly: + +https://github.com/cosmos/gaia/issues/569#issuecomment-767910963 \ No newline at end of file From efb4e57000b438ac6f376e3c987dae7187c5fe4c Mon Sep 17 00:00:00 2001 From: Tobias Schwarz Date: Wed, 27 Jan 2021 15:51:34 +0100 Subject: [PATCH 2/9] Remove any blockheight, since it is not known --- docs/migration/cosmoshub-3.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/migration/cosmoshub-3.md b/docs/migration/cosmoshub-3.md index 189a1128cb0..430af36f10c 100644 --- a/docs/migration/cosmoshub-3.md +++ b/docs/migration/cosmoshub-3.md @@ -151,8 +151,7 @@ Cross check your genesis hash with other peers (other validators) in the chat ro $ gaiad migrate cosmoshub_3_genesis_export.json --chain-id=cosmoshub-4 --genesis-time=[PLACEHOLDER]> genesis.json ``` - Genesis time should be computed relative to the blocktime of `2,902,000`. The genesis time - shall be the upgrade time of `2021-02-18T06:00:00Z` + `60` minutes with the subseconds truncated. + The genesis time shall be the upgrade time of `2021-02-18T06:00:00Z` + `60` minutes with the subseconds truncated. **2021-02-18T07:00:00Z** From 37151027135ff1b35752bdb07a1cae61b9255154 Mon Sep 17 00:00:00 2001 From: Tobias Schwarz Date: Fri, 29 Jan 2021 11:44:31 +0100 Subject: [PATCH 3/9] Add steps for the upgrade and more info around service providers --- docs/migration/cosmoshub-3.md | 70 ++++++++++++++++++++++++++++------- 1 file changed, 56 insertions(+), 14 deletions(-) diff --git a/docs/migration/cosmoshub-3.md b/docs/migration/cosmoshub-3.md index 430af36f10c..a663ad33356 100644 --- a/docs/migration/cosmoshub-3.md +++ b/docs/migration/cosmoshub-3.md @@ -48,6 +48,8 @@ applications gain in speed, readability, convinience and interoperability with m led to a `gaiad` and `gaiacli` binary which were seperated and could be used for different interactions with the blockchain. Both of these have been merged into one `gaiad` which now supports the commands the `gaiacli` previously supported. +- **Node Configuration**: Previously blockchain data and node configuration was stored in `~/.gaiad/`, these will +now reside in `~/.gaia/`, if you use scripts that make use of the configuration or blockchain data, make sure to update the path. ## Risks @@ -65,7 +67,7 @@ before resetting your validator. Prior to exporting `cosmoshub-3` state, validators are encouraged to take a full data snapshot at the export height before proceeding. Snapshotting depends heavily on infrastructure, but generally this -can be done by backing up the `.gaiacli` and `.gaiad` directories. +can be done by backing up the `.gaiad` directory. It is critically important to back-up the `.gaiad/data/priv_validator_state.json` file after stopping your gaiad process. This file is updated every block as your validator participates in a consensus rounds. It is a critical file needed to prevent double-signing, in case the upgrade fails and the previous chain needs to be restarted. @@ -76,7 +78,7 @@ gaia v2.0.14 with v0.37.15 of the _Cosmos SDK_ and restore to their latest snaps __Note__: It is assumed you are currently operating a full-node running gaia v2.0.14 with v0.37.15 of the _Cosmos SDK_. -- The version/commit hash of Gaia v2.0.14: `86343f24f39dbc800922e5fb296b77b9d30ebaae` +The version/commit hash of Gaia v2.0.14: `86343f24f39dbc800922e5fb296b77b9d30ebaae` 1. Verify you are currently running the correct version (v2.0.14) of _gaiad_: @@ -91,34 +93,47 @@ __Note__: It is assumed you are currently operating a full-node running gaia v2. go: go version go1.15 darwin/amd64 ``` -2. Make sure your chain halts at the right time and date: +1. Make sure your chain halts at the right time and date: February 18, 2021 at 06:00 UTC is in UNIX seconds: `1613628000` ```bash perl -i -pe 's/^halt-time =.*/halt-time = 1613628000/' ~/.gaiad/config/app.toml ``` -3. Export existing state from `cosmoshub-3`: + 1. After the chain has halted, make a backup of your `.gaiad` directory - **NOTE**: It is recommended for validators and operators to take a full data snapshot at the export + ```bash + mv ~/.gaiad ./gaiad_backup + ``` + + **NOTE**: It is recommended for validators and operators to take a full data snapshot at the export height before proceeding in case the upgrade does not go as planned or if not enough voting power comes online in a sufficient and agreed upon amount of time. In such a case, the chain will fallback to continue operating `cosmoshub-3`. See [Recovery](#recovery) for details on how to proceed. +1. Export existing state from `cosmoshub-3`: + Before exporting state via the following command, the `gaiad` binary must be stopped! + As a validator, you can see the last block height created in the `~/.gaiad/config/data/priv_validator_state.json` + and obtain it with + + ```bash + cat ~/.gaiad/config/data/priv_validator_state.json | jq '.height' + ``` ```bash $ gaiad export --for-zero-height --height= > cosmoshub_3_genesis_export.json ``` + _this might take a while, you can expect an hour for this step_ -4. Verify the SHA256 of the (sorted) exported genesis file: +1. Verify the SHA256 of the (sorted) exported genesis file: ```bash $ jq -S -c -M '' cosmoshub_3_genesis_export.json | shasum -a 256 [SHA256_VALUE] cosmoshub_3_genesis_export.json ``` -5. At this point you now have a valid exported genesis state! All further steps now require +1. At this point you now have a valid exported genesis state! All further steps now require v4.0.0 of [Gaia](https://github.com/cosmos/gaia). Cross check your genesis hash with other peers (other validators) in the chat rooms. @@ -128,10 +143,11 @@ Cross check your genesis hash with other peers (other validators) in the chat ro $ git clone https://github.com/cosmos/gaia.git && cd gaia && git checkout v4.0.0; make install ``` -6. Verify you are currently running the correct version (v4.0.0) of the _Gaia_: +1. Verify you are currently running the correct version (v4.0.0) of the _Gaia_: -- The version/commit hash of Gaia v4.0.0: `2bb04266266586468271c4ab322367acbf41188f` -- The upgrade time as agreed upon by governance: **February 18, 2021 at 06:00 UTC** + The upgrade time as agreed upon by governance: + + **February 18, 2021 at 06:00 UTC** ```bash $ gaiad version --long @@ -144,8 +160,9 @@ Cross check your genesis hash with other peers (other validators) in the chat ro build_deps: ... ``` + The version/commit hash of Gaia v4.0.0: `2bb04266266586468271c4ab322367acbf41188f` -7. Migrate exported state from the current v2.0.14 version to the new v4.0.0 version: +1. Migrate exported state from the current v2.0.14 version to the new v4.0.0 version: ```bash $ gaiad migrate cosmoshub_3_genesis_export.json --chain-id=cosmoshub-4 --genesis-time=[PLACEHOLDER]> genesis.json @@ -156,14 +173,14 @@ Cross check your genesis hash with other peers (other validators) in the chat ro **2021-02-18T07:00:00Z** -8. Verify the SHA256 of the final genesis JSON: +1. Verify the SHA256 of the final genesis JSON: ```bash $ jq -S -c -M '' genesis.json | shasum -a 256 [SHA256_VALUE] genesis.json ``` -9. Reset state: +1. Reset state: **NOTE**: Be sure you have a complete backed up state of your node before proceeding with this step. See [Recovery](#recovery) for details on how to proceed. @@ -172,10 +189,35 @@ Cross check your genesis hash with other peers (other validators) in the chat ro $ gaiad unsafe-reset-all ``` -10. Move the new `genesis.json` to your `.gaiad/config/` directory +1. Move the new `genesis.json` to your `.gaiad/config/` directory + + ```bash + cp genesis.json ~/.gaia/config/ + ``` + +1. Start your blockchain + + ```bash + gaiad start + ``` ## Notes for Service Providers +# REST server + +In case you have been running REST server with the command `gaiacli rest-server` previously, running this command will not be necessary anymore. +API server is now in-process with daemon and can be enabled/disabled by API configuration in your `.gaiad/config/app.toml`: + +``` +[api] +# Enable defines if the API server should be enabled. +enable = false +# Swagger defines if swagger documentation should automatically be registered. +swagger = false +``` + +`swagger` setting refers to enabling/disabling swagger docs API, i.e, /swagger/ API endpoint. + # Migrations These chapters contains all the migration guides to update your app and modules to Cosmos v0.40 Stargate. From a0d25208866976de7b5aac244649d4af4914b985 Mon Sep 17 00:00:00 2001 From: Tobias Schwarz Date: Fri, 29 Jan 2021 11:48:54 +0100 Subject: [PATCH 4/9] Add info on backup --- docs/migration/cosmoshub-3.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/migration/cosmoshub-3.md b/docs/migration/cosmoshub-3.md index a663ad33356..b7a8e77adc9 100644 --- a/docs/migration/cosmoshub-3.md +++ b/docs/migration/cosmoshub-3.md @@ -114,8 +114,9 @@ The version/commit hash of Gaia v2.0.14: `86343f24f39dbc800922e5fb296b77b9d30eba 1. Export existing state from `cosmoshub-3`: Before exporting state via the following command, the `gaiad` binary must be stopped! - As a validator, you can see the last block height created in the `~/.gaiad/config/data/priv_validator_state.json` - and obtain it with + As a validator, you can see the last block height created in the + `~/.gaiad/config/data/priv_validator_state.json` - or now residing in `gaiad_backup` when you made + a backup as in the last step - and obtain it with ```bash cat ~/.gaiad/config/data/priv_validator_state.json | jq '.height' From 5dafcd40c1b54539290898bc1c04acca7b4c6b4a Mon Sep 17 00:00:00 2001 From: Tobias Schwarz Date: Fri, 29 Jan 2021 12:21:22 +0100 Subject: [PATCH 5/9] Add info about x-crisis-skipp-assert-invariants --- docs/migration/cosmoshub-3.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/migration/cosmoshub-3.md b/docs/migration/cosmoshub-3.md index b7a8e77adc9..daf67237418 100644 --- a/docs/migration/cosmoshub-3.md +++ b/docs/migration/cosmoshub-3.md @@ -202,6 +202,9 @@ Cross check your genesis hash with other peers (other validators) in the chat ro gaiad start ``` + Automated audits of the genesis state can take 30-120 min using the crisis module. This can be disabled by + `gaiad start --x-crisis-skip-assert-invariants`. + ## Notes for Service Providers # REST server From 2fb280aefa0bf1eb9d3fda3e2db855adc58802ba Mon Sep 17 00:00:00 2001 From: Tobias Schwarz Date: Mon, 1 Feb 2021 21:41:56 +0100 Subject: [PATCH 6/9] Update to gaia v2.0.15 --- docs/migration/cosmoshub-3.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/migration/cosmoshub-3.md b/docs/migration/cosmoshub-3.md index daf67237418..e8182faa097 100644 --- a/docs/migration/cosmoshub-3.md +++ b/docs/migration/cosmoshub-3.md @@ -72,23 +72,23 @@ can be done by backing up the `.gaiad` directory. It is critically important to back-up the `.gaiad/data/priv_validator_state.json` file after stopping your gaiad process. This file is updated every block as your validator participates in a consensus rounds. It is a critical file needed to prevent double-signing, in case the upgrade fails and the previous chain needs to be restarted. In the event that the upgrade does not succeed, validators and operators must downgrade back to -gaia v2.0.14 with v0.37.15 of the _Cosmos SDK_ and restore to their latest snapshot before restarting their nodes. +gaia v2.0.15 with v0.37.15 of the _Cosmos SDK_ and restore to their latest snapshot before restarting their nodes. ## Upgrade Procedure -__Note__: It is assumed you are currently operating a full-node running gaia v2.0.14 with v0.37.15 of the _Cosmos SDK_. +__Note__: It is assumed you are currently operating a full-node running gaia v2.0.15 with v0.37.15 of the _Cosmos SDK_. -The version/commit hash of Gaia v2.0.14: `86343f24f39dbc800922e5fb296b77b9d30ebaae` +The version/commit hash of Gaia v2.0.15: `89cf7e6fc166eaabf47ad2755c443d455feda02e` -1. Verify you are currently running the correct version (v2.0.14) of _gaiad_: +1. Verify you are currently running the correct version (v2.0.15) of _gaiad_: ```bash $ gaiad version --long name: gaia server_name: gaiad client_name: gaiacli - version: 2.0.14 - commit: 86343f24f39dbc800922e5fb296b77b9d30ebaae + version: 2.0.15 + commit: 89cf7e6fc166eaabf47ad2755c443d455feda02e build_tags: netgo,ledger go: go version go1.15 darwin/amd64 ``` @@ -163,7 +163,7 @@ Cross check your genesis hash with other peers (other validators) in the chat ro ``` The version/commit hash of Gaia v4.0.0: `2bb04266266586468271c4ab322367acbf41188f` -1. Migrate exported state from the current v2.0.14 version to the new v4.0.0 version: +1. Migrate exported state from the current v2.0.15 version to the new v4.0.0 version: ```bash $ gaiad migrate cosmoshub_3_genesis_export.json --chain-id=cosmoshub-4 --genesis-time=[PLACEHOLDER]> genesis.json From 520221b828a35f082647b95941405c4cc7bd0480 Mon Sep 17 00:00:00 2001 From: Tobias Schwarz Date: Tue, 2 Feb 2021 12:31:02 +0100 Subject: [PATCH 7/9] Add grpc and state sync settings to the upgrade guide --- docs/migration/cosmoshub-3.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/docs/migration/cosmoshub-3.md b/docs/migration/cosmoshub-3.md index e8182faa097..5fde77fd138 100644 --- a/docs/migration/cosmoshub-3.md +++ b/docs/migration/cosmoshub-3.md @@ -222,6 +222,33 @@ swagger = false `swagger` setting refers to enabling/disabling swagger docs API, i.e, /swagger/ API endpoint. +# gRPC Configuration + +gRPC configuration in your `.gaiad/config/app.toml` + +```yaml +[grpc] +# Enable defines if the gRPC server should be enabled. +enable = true +# Address defines the gRPC server address to bind to. +address = "0.0.0.0:9090" +``` + +# State Sync + +State Sync Configuration in your `.gaiad/config/app.toml` + +```yaml +# State sync snapshots allow other nodes to rapidly join the network without replaying historical +# blocks, instead downloading and applying a snapshot of the application state at a given height. +[state-sync] +# snapshot-interval specifies the block interval at which local state sync snapshots are +# taken (0 to disable). Must be a multiple of pruning-keep-every. +snapshot-interval = 0 +# snapshot-keep-recent specifies the number of recent snapshots to keep and serve (0 to keep all). +snapshot-keep-recent = 2 +``` + # Migrations These chapters contains all the migration guides to update your app and modules to Cosmos v0.40 Stargate. From d56b4fa959b43967cec371048aa1f699757f32c1 Mon Sep 17 00:00:00 2001 From: Tobias Schwarz Date: Tue, 2 Feb 2021 12:36:41 +0100 Subject: [PATCH 8/9] Replace unsafe-reset-all with init --- docs/migration/cosmoshub-3.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/migration/cosmoshub-3.md b/docs/migration/cosmoshub-3.md index 5fde77fd138..7d37416ce3a 100644 --- a/docs/migration/cosmoshub-3.md +++ b/docs/migration/cosmoshub-3.md @@ -187,7 +187,7 @@ Cross check your genesis hash with other peers (other validators) in the chat ro See [Recovery](#recovery) for details on how to proceed. ```bash - $ gaiad unsafe-reset-all + $ gaiad init [moniker] ``` 1. Move the new `genesis.json` to your `.gaiad/config/` directory From 845ccf1cc7439e3b0ce11902f061c0ae95a3bad9 Mon Sep 17 00:00:00 2001 From: Tobias Schwarz Date: Wed, 3 Feb 2021 00:37:07 +0100 Subject: [PATCH 9/9] Use unsafe-reset-all, info about genesis hash value --- docs/migration/cosmoshub-3.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/migration/cosmoshub-3.md b/docs/migration/cosmoshub-3.md index 7d37416ce3a..a11953074b0 100644 --- a/docs/migration/cosmoshub-3.md +++ b/docs/migration/cosmoshub-3.md @@ -129,6 +129,9 @@ The version/commit hash of Gaia v2.0.15: `89cf7e6fc166eaabf47ad2755c443d455feda0 1. Verify the SHA256 of the (sorted) exported genesis file: + Compare this value with other validators / full node operators of the network. + Going forward it will be important that all parties can create the same genesis file export. + ```bash $ jq -S -c -M '' cosmoshub_3_genesis_export.json | shasum -a 256 [SHA256_VALUE] cosmoshub_3_genesis_export.json @@ -181,13 +184,16 @@ Cross check your genesis hash with other peers (other validators) in the chat ro [SHA256_VALUE] genesis.json ``` + Compare this value with other validators / full node operators of the network. + It is important that each parties can reproduce the same genesis.json file from the steps accordingly. + 1. Reset state: **NOTE**: Be sure you have a complete backed up state of your node before proceeding with this step. See [Recovery](#recovery) for details on how to proceed. ```bash - $ gaiad init [moniker] + $ gaiad unsafe-reset-all ``` 1. Move the new `genesis.json` to your `.gaiad/config/` directory