Skip to content
This repository has been archived by the owner on Jun 11, 2024. It is now read-only.

docs: Updates for v10 #170

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 14 additions & 42 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,62 +2,31 @@

## Overview

The current Gaia Version of the Cosmos Hub mainnet is [`v6.0.4`](https://github.com/cosmos/gaia/releases/tag/v6.0.4). To bootstrap a mainnet node, it is possible to sync from `v6.0.4` via Quicksync or via [State Sync](https://hub.cosmos.network/main/hub-tutorials/join-mainnet.html#state-sync).
The current Gaia Version of the Cosmos Hub mainnet is [`v10.0.x`](https://github.com/cosmos/gaia/releases/tag/v10.0.1). To bootstrap a mainnet node, it is possible to sync from `v9.1.1` via Quicksync or via [State Sync](https://hub.cosmos.network/main/hub-tutorials/join-mainnet.html#state-sync).

For a full set of instructions on boostrapping a mainnet node, see the Hub's [**Join the Cosmos Hub Mainnet**](https://hub.cosmos.network/main/hub-tutorials/join-mainnet.html) documentation.

However to build a node from scratch a node operator will need to first run [v4.2.6](https://github.com/cosmos/gaia/releases/tag/v4.2.6) until the node panics at block height [6910000](https://github.com/cosmos/gaia/blob/main/docs/migration/cosmoshub-4-delta-upgrade.md#Upgrade-will-take-place-July-12,-2021). The node should stop running after the panic, if it does not stop automatically, wait for 5-10 minutes and then kill it manually. Then install the latest version of gaia ([v5.0.2](https://github.com/cosmos/gaia/releases/tag/v5.0.2)) and then begin running the binary agian with the optional flag `--x-crisis-skip-assert-invariants`. This will begin syncing the node since the last upgrade until it is at the current height.
<!-- However to build a node from scratch a node operator will need to first run [v4.2.6](https://github.com/cosmos/gaia/releases/tag/v4.2.6) until the node panics at block height [6910000](https://github.com/cosmos/gaia/blob/main/docs/migration/cosmoshub-4-delta-upgrade.md#Upgrade-will-take-place-July-12,-2021). The node should stop running after the panic, if it does not stop automatically, wait for 5-10 minutes and then kill it manually. Then install the latest version of gaia ([v5.0.2](https://github.com/cosmos/gaia/releases/tag/v5.0.2)) and then begin running the binary agian with the optional flag `--x-crisis-skip-assert-invariants`. This will begin syncing the node since the last upgrade until it is at the current height. -->
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the node anyway need to kill manually


## Scheduled Upgrade 🗓️

The `v7-Theta` upgrade was proposed through an [on-chain software upgrade proposal](https://www.mintscan.io/cosmos/proposals/65) and is open to voting between 2022-03-25 and 2022-04-08. The upgrade is proposed to take place at block height **10,085,397** which should occur approximately at **April 12th, 2022 at 12:00:00 UTC.** The chain id will remain `cosmoshub-4`.
The `v10` upgrade was proposed through an [on-chain software upgrade proposal](https://www.mintscan.io/cosmos/proposals/798) and is open to voting between 2023-06-02 and 2023-06-16. The upgrade is proposed to take place at block height **15,816,200** which should occur approximately at **June 21st, 2023.** The chain id will remain `cosmoshub-4`.

You can find `v7.0.0` tagged code and binaries in the [gaia repository](https://github.com/cosmos/gaia/releases/tag/v7.0.0). The json for the on-chain proposal is [archived in this repository](upgrades/v7-Theta-proposal.json) for future reference.

We recommend that you participate in the [Theta testnet](https://github.com/cosmos/testnets/tree/master/v7-theta/public-testnet) to familiarize yourself with the upgrade process. From experience on the Theta testnet, we expect this upgrade to be much faster than the Vega upgrade due to a simpler migration.
You can find `v10.0.x` tagged code and binaries in the [gaia repository](https://github.com/cosmos/gaia/releases/tag/v10.0.1).

Upgrades can be a memory intensive process. Please see the guide for the [current hardware recommendations](https://hub.cosmos.network/main/hub-tutorials/join-mainnet.html#hardware). We recommend that you are prepared to upgrade on a machine with sufficient physical memory. Some node operators also choose add 8-16 GB of swap to avoid out of memory issues.

You can check out the Cosmos Hub documentation for a step-by-step tutorial on how to [upgrade your node](https://hub.cosmos.network/main/hub-tutorials/upgrade-node.html). Version specific upgrade notes using Cosmovisor are provided below.

### Upgrading using Cosmovisor

At the proposed halt height, you should expect to see a message like:

```
ERR UPGRADE "v7-Theta" NEEDED at height: 10085397
```

We recommend that you use [Cosmovisor](https://github.com/cosmos/cosmos-sdk/tree/master/cosmovisor#auto-download) for managing your gaia upgrades. You can do this in one of two ways:

#### 1. Autodownload

If you're using Cosmovisor's **autodownload** feature, please set the environment variable `DAEMON_ALLOW_DOWNLOAD_BINARIES=true`

**IMPORTANT:** In case you're using auto-download, on Gaia v6.0.0 or v6.0.3 Cosmosvisor won't auto-download the binary unfortunately. v6.0.4 will work fine. Please refer to [this issue](https://github.com/cosmos/gaia/issues/1342) for details.

#### 2. Manual

If you're **manually preparing your binary**, please download v7.0.0 and move the binary to the v7-Theta upgrade directory in your cosmovisor directory

```
.
├── current -> genesis or upgrades/<name>
├── genesis
│ └── bin
│ └── gaiad
└── upgrades
└── v7-Theta
├── bin
│ └── gaiad
└── upgrade-info.json
```
Cosmovisor instructions can be found in the [v10 upgrade instructions](https://github.com/cosmos/gaia/blob/main/docs/migration/cosmoshub-4-v10-upgrade.md).

## Quickstart

**Preresquisites**
- `make` & `gcc`
- `Go 1.16+`
- `Go 1.20+`

> **Note**: Make sure to have all prerequisites installed. See the [installation docs](https://hub.cosmos.network/main/getting-started/installation.html) for clarification and a detailed set of instructions.

Expand All @@ -74,7 +43,7 @@ For reference, the list of `rpc_servers` and `persistent` peers can be found in
```bash
# Build gaiad binary and initialize chain
cd $HOME
git clone -b v6.0.4 https://github.com/cosmos/gaia
git clone -b v10.0.1 https://github.com/cosmos/gaia
cd gaiad
make install
gaiad init <custom moniker>
Expand All @@ -99,7 +68,9 @@ sed -i 's/rpc_servers = ""/rpc_servers = "https:\/\/rpc.cosmos.network:443,https
gaiad start --x-crisis-skip-assert-invariants
```

**Sync from Scratch**
<!-- This seems unneccesary duplication, we should just have one doc that goes through upgrading from scratch with each version -->

<!-- **Sync from Scratch**

```bash
# Build gaiad binary and initialize chain
Expand Down Expand Up @@ -138,7 +109,7 @@ Once `V5` reaches the upgrade block height, the chain will halt and display the
```
ERR UPGRADE "Vega" NEEDED at height: 8695000

```
```

This will indicate it is time to perform the Vega upgrade. Similar with the previous upgrade, checkout `V6`, compile the new binary and restart `gaiad`

Expand All @@ -147,10 +118,11 @@ git checkout -b v6.0.4
make install
gaiad start --x-crisis-skip-assert-invariants
```
-->

> _NOTE_: If the node is unable to connect to any of the seeds listed here, find additional seeds and peers in [this document](https://hackmd.io/@KFEZk8oMTz6vBlwADz0M4A/BkKEUOsZu#) maintained by community members, and at [Atlas](https://atlas.cosmos.network/nodes), which is automatically generated by crawling the network. Additionally, node operators can just copy [Quicksync's addressbook](https://quicksync.io/addrbook.cosmos.json) and move it to `$HOME/.gaia/config/addrbook.json`
> _NOTE_: If the node is unable to connect to any of the seeds listed here, find additional seeds and peers in [this document](https://hackmd.io/@KFEZk8oMTz6vBlwADz0M4A/BkKEUOsZu#) maintained by community members, which is automatically generated by crawling the network. Additionally, node operators can just copy [Quicksync's addressbook](https://quicksync.io/addrbook.cosmos.json) and move it to `$HOME/.gaia/config/addrbook.json`


## Upgrade to Validator Node

You now have an active full node. What's the next step? You can upgrade your full node to become a Cosmos Validator. The top 125 validators have the ability to propose new blocks to the Cosmos Hub. Continue onto [the Validator Setup](../validators/validator-setup.md).
You now have an active full node. What's the next step? You can upgrade your full node to become a Cosmos Validator. The top 180 validators have the ability to propose new blocks to the Cosmos Hub. Continue onto [the Validator Setup](../validators/validator-setup.md).