Service info
Website: https://www.bitcanna.io/
Explorer: https://www.mintscan.io/bitcanna/validators/bcnavaloper10pf5mvpwcwzmp86gcx0fmxgje6lg0tv9vyatax
Type: mainnet
Chain-id: bitcanna-1
Node version: 3.1.0
Endpoints
RPC: https://rpc-bitcanna.mms.team
Block Height: 15568474
Size: 522M
Snapshot time: 2024-09-05 03:04:15
File: snapshot_bcnad_20240905030423.tar.lz4
# Set variables
PROJECT_NAME=bitcanna
PROJECT_TYPE=mainnet
PROJECT_SERVICE=bcnad
PROJECT_BINARY=bcnad
PROJECT_FOLDER=~/.bcna
# Install lz4
sudo apt update
sudo apt-get install snapd lz4 -y
# Disable State Sync
sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1false|" ${PROJECT_FOLDER}/config/config.toml
# Stop and reset node
sudo systemctl stop ${PROJECT_SERVICE}
cp ${PROJECT_FOLDER}/data/priv_validator_state.json ${PROJECT_FOLDER}/priv_validator_state.json.backup
${PROJECT_BINARY} tendermint unsafe-reset-all --home ${PROJECT_FOLDER} --keep-addr-book
# Download Snapshot
SNAPSHOT_NAME=$(curl -s https://snapshots.mms.team/${PROJECT_NAME}/${PROJECT_TYPE}/ | egrep -o ">snapshot.*\.tar.lz4" | tr -d ">" | tail -n 1)
curl -o - -L https://snapshots.mms.team/${PROJECT_NAME}/${PROJECT_TYPE}/${SNAPSHOT_NAME} | lz4 -c -d - | tar -x -C ${PROJECT_FOLDER}
# Restore priv_validator_state.json
mv ${PROJECT_FOLDER}/priv_validator_state.json.backup ${PROJECT_FOLDER}/data/priv_validator_state.json
# Restart Node
sudo systemctl restart ${PROJECT_SERVICE}
journalctl -u ${PROJECT_SERVICE} -f
# Set variables
PROJECT_NAME=bitcanna
PROJECT_TYPE=mainnet
PROJECT_SERVICE=bcnad
PROJECT_BINARY=bcnad
PROJECT_FOLDER=~/.bcna
SNAP_RPC="https://rpc-bitcanna.mms.team:443"
PEERS="[email protected]:56104"
# Stop and reset node
sudo systemctl stop ${PROJECT_SERVICE}
cp ${PROJECT_FOLDER}/data/priv_validator_state.json ${PROJECT_FOLDER}/priv_validator_state.json.backup
${PROJECT_BINARY} tendermint unsafe-reset-all --home ${PROJECT_FOLDER} --keep-addr-book
# Add peer
sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PEERS\"/" ${PROJECT_FOLDER}/config/config.toml
# Configure State Sync
LATEST_HEIGHT=$(curl -s $SNAP_RPC/block | jq -r .result.block.header.height);\
BLOCK_HEIGHT=$((LATEST_HEIGHT - 2000)); \
TRUST_HASH=$(curl -s "$SNAP_RPC/block?height=$BLOCK_HEIGHT" | jq -r .result.block_id.hash)
sed -i.bak -E "s|^(enable[[:space:]]+=[[:space:]]+).*$|\1true| ; \
s|^(rpc_servers[[:space:]]+=[[:space:]]+).*$|\1\"$SNAP_RPC,$SNAP_RPC\"| ; \
s|^(trust_height[[:space:]]+=[[:space:]]+).*$|\1$BLOCK_HEIGHT| ; \
s|^(trust_hash[[:space:]]+=[[:space:]]+).*$|\1\"$TRUST_HASH\"|" ${PROJECT_FOLDER}/config/config.toml
# Restore priv_validator_state.json
mv ${PROJECT_FOLDER}/priv_validator_state.json.backup ${PROJECT_FOLDER}/data/priv_validator_state.json
# Restart Node
sudo systemctl restart ${PROJECT_SERVICE}
journalctl -u ${PROJECT_SERVICE} -f