[Join the Cosmos Stargate announcements channel!](Cosmos Stargate announcements channel!)
If you’re running a block explorer, wallet, exchange, validator, or any other service (eg. custody provider) that depends upon the Cosmos Hub or Cosmos ecosystem, you’ll want to pay attention, because this upgrade will involve substantial changes.
- Collection of breaking changes from changelogs
- Inter-Blockchain Communication (IBC)– cross-chain transactions
- Protobuf Migration – blockchain performance & dev acceleration
- State Sync – minutes to sync new nodes
- Full-Featured Light Clients
- Chain Upgrade Module – upgrade automation
Help us to get the word out–this is a major leap for the Cosmos Network and we want everyone on board 🚀
Upgrade instructions:
- Stop your gaia v3 instance
killall gaiad
-
Backup your
.gaia
folder -
Install gaia v4 binary
git checkout v4.0.0
make install
- Start gaia v4.0.0 binary
We are launching the final stargate testnet. We
git clone https://github.com/cosmos/gaia
git checkout v4.0.0
make install
Our validator node for a persistent peer is available at
6ae55f60f0951247985ccd52773312aa89413d1c@34.71.170.158:26656
Seed Node
feeb2c3e89a69d09390c292fca9ef1c4eba084c5@35.193.131.167:26656
Please familiarize your self with the Running a Node documentation.
- Legacy Amino
- IBC
- State-Sync
- Cosmovisor
State sync rapidly bootstraps a new node by discovering, fetching, and restoring a state machine snapshot from peers instead of fetching and replaying historical blocks. Requires some peers in the network to take and serve state machine snapshots. State sync is not attempted if the node has any local state (LastBlockHeight > 0). The node will have a truncated block history, starting from the height of the snapshot.
In the Tendermint config file there is a state-sync section. Some of these fields must be filled in order to use state-sync.
To find out how to fill in this information please visit: https://docs.tendermint.com/master/tendermint-core/state-sync.html
Additionally, some nodes in the network must take state sync snapshots, which are configured in app.toml
:
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.
NOTE: Please set this value to a non-zero value. This is required in order for other nodes to be able to utilize state-sync.
snapshot-interval = {{ .StateSync.SnapshotInterval }}
Snapshot-keep-recent specifies the number of recent snapshots to keep and serve (0 to keep all).
snapshot-keep-recent = {{ .StateSync.SnapshotKeepRecent }}
These are disabled by default, out of caution - this is new code, and we wouldn't want it to cause a chain-wide halt or data corruption. Eventually we can consider enabling them by default.