Secret Network v1.8 Emergency Upgrade Instructions


  • All coordination efforts will be done in the "SN Validators" Telegram group.

  • Make sure to backup your validator before making any chnages.

  • Please read carefully before you begin the upgrade.

Upgrading Manually

⚠️ Note: The below instructions assume default installation. DO NOT COPY-PASTE if config.toml is not in ~/.secretd/config/config.toml or if you modified /etc/systemd/system/secret-node.service. If you have modified /etc/systemd/system/secret-node.service, you will need to re-apply those changes post installation and pre service restart.

When the network reaches the halt height 7,760,000, you'll see this message in your node's log (journalctl -fu secret-node):

2:00PM ERR UPGRADE "v1.8" NEEDED at height: 7760000:
2:00PM ERR CONSENSUS FAILURE!!! err="UPGRADE \"v1.8\" NEEDED at height: 7760000

Then, the upgrade steps for v1.8 are:

# Backup your node's SGX secrets
cp -a /opt/secret/.sgx_secrets ~/sgx_secrets_backup
mkdir 17backup
cp ~/.secretd/.node/* 17backup/

# Figure out currently used db backend
DB_BACKEND=$(awk -F \" '/^db_backend =/{print $2}' ~/.secretd/config/config.toml)

# Get the v1.8 binaries
wget "https://github.com/scrtlabs/SecretNetwork/releases/download/v1.8.0/secretnetwork_1.8.0_mainnet_${DB_BACKEND}_amd64.deb"

# Verify the v1.8 binaries
echo 'd1bb747afd5cdbbd5330f37a8c1eeba1312cc891af19a1f589eb3e3f44630e23 secretnetwork_1.8.0_mainnet_goleveldb_amd64.deb
e377c67dd1760760fd3ada90517e55e446664d6372224f6558fe74decc1acb0d secretnetwork_1.8.0_mainnet_rocksdb_amd64.deb' |
    grep "$DB_BACKEND" |
    sha256sum --check

# Stop the v1.7 node
sudo systemctl stop secret-node

# Install the v1.8 binaries
sudo apt install -y "./secretnetwork_1.8.0_mainnet_${DB_BACKEND}_amd64.deb"

# re-apply any systemd unit file customizations

# Restart the node
sudo systemctl restart secret-node

After restarting the node with v1.8, you should see INF applying upgrade "v1.8" at height: 7760000 in the logs (journalctl -fu secret-node). Once 67% of voting power comes online, you'll see blocks executing again.

Upgrading Automatically Using Cosmovisor

Cosmovisor is a new process manager for cosmos blockchains. It can make low-downtime upgrades smoother, as validators don't have to manually upgrade binaries during the upgrade, and instead can pre-install new binaries, and Cosmovisor will automatically update them based on on-chain SoftwareUpgrade proposals.

⚠️ Cosmovisor is still new and best practices for using it are not yet established. If you don't feel adventurous at this time, we recommend upgrading the manual way.

For instructions on how to setup Cosmovisor, go here.

Details of Upgrade Time

When the network reaches the halt height 7,760,000, the Secret Network blockchain will be halted and validators will need to take action to upgrade the chain to the secretd v1.8 binary (be it manually or automatically).

The proposal targets the upgrade proposal block to be 7,760,000, anticipated to be on Saturday March 4, 2023 at 3:00PM UTC.

The upgrade is anticipated to take approx 30 minutes, during which time, there will not be any on-chain activity on the network.

In Case of an Upgrade Failure

In the event of an issue at upgrade time, we should coordinate via the "SN Validators" Telegram group.

If as a result of a software bug the network fails to produce new blocks with the v1.8 binaries, the SCRT Labs team will distribute a v1.7 binary with an empty v1.8 upgrade handler, which will allow the chain to revert to v1.7 while continuing to produce new blocks.

Last updated