Mainnet upgrade: v0.35

About the v0.35 upgrade

This release adds the Quantum Portal Virtual Machine to the network and adds support for CosmWasm contract creation.

⚠️

This release enables CosmWasm. Contracts created with CosmWasm will require governance proposals to be deployed for the indefinite future.

Instructions for 2024-March-14 mainnet upgrade to QP-core v0.35.5, vald v0.35.5, and tofnd v0.10.1. Release can be found on GitHub.

Upgrade height 11795700 countdown

⚠️

Go v1.21 will be needed to build QPd.

Node operators using binaries need to download wasmvm v1.3.1 libwasmvm.x86_64.so and add the parent folder to LD_LIBRARY_PATH.

Node operators will need to use the updated cosmsprund to prune their nodes.

If using the community node setup scripts, please update to the latest commit on main first. wasmvm lib will be auto-downloaded to $QPD_HOME/lib but you’ll need to add it to LD_LIBRARY_PATH before running the script.

  1. If you’re a validator or have delegated to one, please vote for the upgrade proposal via
QPd tx gov vote 195 [yes|no] --from validator
  1. Wait for the proposed upgrade block, 11795700. Your node will panic at that block height with a log: {"level":"error","module":"consensus","err":"UPGRADE \"v0.35\" NEEDED at height: 11795700", ...}. Stop your node after chain halt.
pkill -f 'QPd start'
# Validators need to also stop vald/tofnd
pkill -f 'vald-start'
pkill -f tofnd
  1. Backup the state:
cp -r ~/.QP/.core/data ~/.QP-dojo-1-upgrade-0.34/.core/data
⚠️

Caution: If you backup the entire folder, ~/.QP/.core, that’ll also include your private keys (inside config and keyring-file subfolders). That can be dangerous if anyone gets access to your backups. We recommend backing up keys separately when you first create your node, and then excluding them from any data backups.

  1. Restart your QPd node with the new v0.35.5 build.
  2. If you’re a validator also restart vald with v0.35.5 and tofnd with v0.10.1.

Example using join scripts in QPate-community git repo:

# in QPate-community repo
git checkout main
git pull
KEYRING_PASSWORD="pw-1" ./scripts/node.sh -n mainnet -a v0.35.5
# For validators, restart vald/tofnd
KEYRING_PASSWORD="pw-1" TOFND_PASSWORD="pw-2" ./scripts/validator-tools-host.sh -n mainnet -a v0.35.5 -q v0.10.1
Edit this page