diff --git a/.gitbook/docs.json b/.gitbook/docs.json index f15ef2ca..3c59c100 100644 --- a/.gitbook/docs.json +++ b/.gitbook/docs.json @@ -231,6 +231,7 @@ "infra/validator-mainnet/index", "infra/validator-mainnet/peggo", "infra/validator-mainnet/canonical-chain-upgrade", + "infra/validator-mainnet/canonical-chain-upgrade-v1.20.1", "infra/validator-mainnet/canonical-chain-upgrade-v1.20.0", "infra/validator-mainnet/canonical-chain-upgrade-v1.20.0-flag-changes", "infra/validator-mainnet/canonical-chain-upgrade-v1.19.0", diff --git a/.gitbook/infra/validator-mainnet/canonical-chain-upgrade-X.Y.Z.md b/.gitbook/infra/validator-mainnet/canonical-chain-upgrade-X.Y.Z.md index 0fc11e25..0b0a8d26 100644 --- a/.gitbook/infra/validator-mainnet/canonical-chain-upgrade-X.Y.Z.md +++ b/.gitbook/infra/validator-mainnet/canonical-chain-upgrade-X.Y.Z.md @@ -1,5 +1,6 @@ --- title: Upgrade to {/* $VERSION */} +description: How to upgrade Injective Mainnet Validator node to {/* $VERSION */} updatedAt: "2025-12-03" --- @@ -14,7 +15,7 @@ Following [IIP {/* $PROPOSAL_NUM */}](https://injhub.com/proposal/{/* $PROPOSAL_ ## Summary -The Injective Chain will undergo a scheduled enhancement upgrade on **{/* $DATE_TIME (e.g. Tuesday, August 19th, 2025, 14:00 UTC) */}**. +The Injective Chain will undergo a scheduled enhancement upgrade at approximately **{/* $DATE_TIME (e.g. Tuesday, August 19th, 2025, 14:00 UTC) */}**. The following is a short summary of the upgrade steps: diff --git a/.gitbook/infra/validator-mainnet/canonical-chain-upgrade-v1.20.1.mdx b/.gitbook/infra/validator-mainnet/canonical-chain-upgrade-v1.20.1.mdx new file mode 100644 index 00000000..e615d7fb --- /dev/null +++ b/.gitbook/infra/validator-mainnet/canonical-chain-upgrade-v1.20.1.mdx @@ -0,0 +1,118 @@ +--- +title: Upgrade to v1.20.1 +description: How to upgrade Injective Mainnet Validator node to v1.20.1 +updatedAt: "2026-06-27" +--- + +Thursday, July 2nd, 2026 + +Following [IIP-665](https://injhub.com/proposal/665/) This indicates that the upgrade procedure should be performed on block number **172502000** + +* [Summary](#summary) +* [Recovery](#recovery) +* [Upgrade Procedure](#upgrade-procedure) +* [Notes for Validators](#notes-for-validators) + +## Summary + +The Injective Chain will undergo a scheduled enhancement upgrade at approximately **Thursday, July 2nd, 2026, 10:00 AM ET / 14:00 UTC**. + +The following is a short summary of the upgrade steps: + +1. Vote and wait till the node panics at block height **172502000**. +2. Backing up configs, data, and keys used for running the Injective Chain. +3. Install the [v1.20.1](https://github.com/InjectiveFoundation/injective-core/releases/tag/v1.20.1-1782532109) binaries. +4. Start your node with the new injectived binary to fulfill the upgrade. + +Upgrade coordination and support for validators will be available on the `#validators` private channel of the [Injective Discord](https://discord.gg/injective). + +The network upgrade can take the following potential pathways: + +1. **Happy path**:\ + Validators successfully upgrade the chain without purging the blockchain history, and all validators are up within 5-10 minutes of the upgrade. +2. **Not-so-happy path**:\ + Validators have trouble upgrading to the latest Canonical chain. +3. **Abort path**:\ + In the rare event that the team becomes aware of unnoticed critical issues, the Injective team will attempt to patch all the breaking states and provide another official binary within 36 hours.\ + If the chain is not successfully resumed within 36 hours, the upgrade will be announced as aborted on the `#validators` channel in [Injective's Discord](https://discord.gg/injective), and validators will need to resume running the chain without any updates or changes. + +## Recovery + +Prior to exporting chain 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 `.injectived` directory. + +It is critically important to backup the `.injectived/data/priv_validator_state.json` file after stopping your injectived 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 restore the snapshot and downgrade back to Injective Chain release [v1.20.0](https://github.com/InjectiveFoundation/injective-core/releases/tag/v1.20.0) and continue this earlier chain until next upgrade announcement. + +## Upgrade Procedure + +### Notes for Validators + +You must remove the wasm cache before upgrading to the new version: + +```shell +rm -rf .injectived/wasm/wasm/cache/ +``` + +### Breaking changes + + + Verify that you make the following changes as part of the upgrade process. + + +The Go build environment has changed. +In the previous release, the Go version was 1.26.2 (`go1.26.2`). +Update your Go version to 1.26.4 (`go1.26.4`). + +### Steps + +1. Verify you are currently running the correct version (`v1.20.0`) of `injectived`: + + ```bash + $ injectived version + Version v1.20.0 (3ade14d) + Compiled at 20260530-0816 using Go go1.26.2 (amd64) + ``` + +2. Make a backup of your `.injectived` directory: + + ```bash + cp -r ~/.injectived ./injectived-backup + ``` + +3. Download and install the `injective-chain` release for v1.20.1: + + ```bash + wget https://github.com/InjectiveFoundation/injective-core/releases/download/v1.20.1-1782532109/linux-amd64.zip + unzip linux-amd64.zip + sudo mv injectived peggo /usr/bin + sudo mv libwasmvm.x86_64.so /usr/lib + ``` + +4. Verify you are currently running the correct version (v1.20.1) of `injectived` after downloading the v1.20.1 release: + + ```bash + $ injectived version + Version v1.20.1 (eef179e) + Compiled at 20260627-0349 using Go go1.26.4 (amd64) + ``` + +5. Start `injectived`: + + ```bash + injectived start + ``` + +6. Verify you are currently running the correct version (v1.20.1) of `peggo` after downloading the v1.20.1 release: + + ```bash + $ peggo version + Version v1.20.1 (eef179e) + Compiled at 20260627-0356 using Go go1.26.4 (amd64) + ``` + +7. Start peggo: + + ```bash + peggo orchestrator + ```