Upgrade Details
Overview
This is a simple upgrade to test the upgrade process and prepare validators for future upgrades.
This upgrade to version 0.9 includes the following changes:
- Version Command: Improved version representation for the
dchain versioncommand - Notary Module: Fixed
authorityconfiguration in thenotarymodule - Log Filtering: Added configurable log filtering to reduce log volume
Log Configuration
You can now configure log filtering by specifying log_level in your config.toml. This filters validator's VP
(Validator Process) routines and can significantly reduce disk usage:
log_level = "abci:error"
This configuration shows only error level messages and higher severity messages (e.g., panic). For debugging or
verifying VP processing, you can set the level back to info.
Upgrade Methods
You can upgrade using one of two methods:
- Cosmovisor (recommended): Automated upgrade handling
- Manual Upgrade: Manual binary replacement
Preparation
Step 1: Checkout Source Code
NOTE: The git tag is v0.9.0 but the upgrade version is 0.9
Fetch and checkout the v0.9.0 tag:
git fetch --all
git checkout v0.9.0
Step 2: Build the Binary
Compile the new binary:
make build
After successful compilation, the dchain binary will be in the root directory.
Option A: Cosmovisor Upgrade (Recommended)
Cosmovisor is a process manager from cosmos-sdk that automates binary upgrades, eliminating the need to manually monitor for network halts.
Create Upgrade Directory
Create the directory structure for the upgrade:
mkdir -p <path-to-dchain-home>/cosmovisor/upgrades/0.9/bin
Replace <path-to-dchain-home> with your cosmovisor data directory path.
Copy Binary
Copy the compiled binary to the upgrade directory:
cp dchain <path-to-dchain-home>/cosmovisor/upgrades/0.9/bin/
What Happens During Upgrade
When the network halts with CONSENSUS FAILURE!!! for the upgrade:
- Cosmovisor detects the upgrade height
- Automatically replaces the binary symlink
- Restarts
dchainwith the new binary
Current directory structure:
current -> genesis
genesis/
upgrades/
0.9/
bin/
dchain
After successful upgrade:
current -> upgrades/0.9
genesis/
upgrades/
0.9/
bin/
dchain
Option B: Manual Upgrade
If not using cosmovisor, follow these steps when the network halts:
- Stop the running
dchainprocess - Replace the old binary with the new
v0.9.0binary - Restart
dchain
Note: You must monitor for the CONSENSUS FAILURE!!! message and perform these steps promptly to avoid prolonged
downtime.