Skip to main content

State Sync

Clean previous configuration
sed -i "/\[statesync\]/, /^enable =/ s/=.*/= false/;\
/^rpc_servers =/ s|=.*|= \"\"|;\
/^trust_height =/ s/=.*/= 0/;\
/^trust_hash =/ s/=.*/= \"\"/" $HOME/.provenanced/config/config.toml
Stop your node
sudo systemctl stop provenance
Config parameters
SNAP_RPC="https://rpc.provenance.blockval.io:443"
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)
Check parameters
echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH
Save config
sed -i "/\[statesync\]/, /^enable =/ s/=.*/= true/;\
/^rpc_servers =/ s|=.*|= \"$SNAP_RPC,$SNAP_RPC\"|;\
/^trust_height =/ s/=.*/= $BLOCK_HEIGHT/;\
/^trust_hash =/ s/=.*/= \"$TRUST_HASH\"/" $HOME/.provenanced/config/config.toml
Check parameters
echo $LATEST_HEIGHT $BLOCK_HEIGHT $TRUST_HASH
Backup your validator state ,reset data and finally restore your validator state
cp $HOME/.provenanced/data/priv_validator_state.json $HOME/.provenanced/priv_validator_state.json.backup
provenanced tendermint unsafe-reset-all --home $HOME/.provenanced --keep-addr-book
mv $HOME/.provenanced/priv_validator_state.json.backup $HOME/.provenanced/data/priv_validator_state.json
Add wasm folder
curl -L  https://snap.blockval.io/provenance/pio-mainnet-1_wasm_latest.tar.lz4 | tar -Ilz4 -xf - -C $HOME/.provenanced/data
Start your node
sudo systemctl start provenance
Make sure that your node is running
sudo service provenance status
sudo journalctl -u provenance -f