From v0.12.x to v0.13.0

This guide is exclusively for Validators and Node Operators, please pay Maximum attention and Perform a backup before upgrading!

Stop of the node

The node will automatically stop at block height 9845000 approximately at 2023-02-03 15:45:00 UTC. The log file will indicate that in order to continue, you must replace the bitsongd binary. At that point you can finish the bitsongd process.

sudo systemctl stop bitsongd
sudo systemctl disable bitsongd

Backup

In the event that the update is unsuccessful, you will need to restore the previous status and install a future patch (example v0.13.1).

In order to perform the backup, you just need to copy the content present on the home directory of go-bitsong, in this case ~/.bitsongd

Remember to have at least 50% free disk space

cp -Rv ~/.bitsongd ~/backup_bitsongd_0100

This operation should take 5/10 minutes, however, in the event that you're using low performance servers, the process might take up to 30/40 minutes.

Remove golang 1.18.x

The upgrade to v0.13.0 requires a version of golang-1.19.x

wget -q -O - https://git.io/vQhTU | bash -s -- --remove

Install golang 1.19.x

wget -q -O - https://git.io/vQhTU | bash -s -- --version 1.19.5

Replace bitsongd

First of all we need to make sure we're using the v0.10.0 version

bitsongd version
# 0.12.x

We should get the 0.12.x version

At this point we have to download and compile the new binary bitsongd 0.13.0

cd ~
rm -rf go-bitsong # (only in the event that a previous directory is already present)
git clone https://github.com/bitsongofficial/go-bitsong.git
cd go-bitsong
git checkout v0.13.0
make install

The make install command will compile and install the new binary.

Let's check if the binary was properly updated

bitsongd version
# 0.13.0

If we get the answer 0.13.0 the process was successffully executed and we can proceed to restart the node.

Start bitsongd

sudo systemctl enable bitsongd
sudo systemctl start bitsongd

At this point the node will start performing the update of all the existing modules. Keep into consideration that the operation might take up to 10 minutes.

To view the logs:

sudo journalctl -u bitsongd -f

Last updated