Matic Mainnet - Bor Upgrade

Hey Everyone!

We have been working intensely for the past few months on many things. We are happy to announce that we have released the latest version for Bor on the Mainnet.

The latest version of Bor is thoroughly tested on the Mumbai and Mainnet first before rolling out to the community.

This upgrade is not a time block event, you can upgrade your Bor at any time you want. However, ensure that you upgrade your Bor before 31st January, 2021

In order to upgrade your Bor to the latest version you can follow the following steps. You have to ensure that you upgrade your Bor on your Sentry (Sentries) and Validator nodes. If you only upgrade on one of the nodes, you will have problems.

For Sentry Machine

Ensure that you stop the Bor service before running anything.

$ sudo service bor stop

Next you need to go to your Ansible folder and do a Git pull

# Go to node-ansible folder and git pull master branch
$ git pull origin master
$ ansible-playbook -l sentry playbooks/bor.yml --extra-var="bor_branch=v0.2.2"

This will help install the latest version for Bor on your Sentry node. Once the latest version of Bor is installed, you need to then login to your Sentry Machine and follow the next steps.

$ ssh <sentry-machine-ip>
$ cd ~/bor
$ make bor

This will setup your Bor to the latest version and with updated config. To check your Bor version you can run this command bor version

It should look something like this:

Bor
Version: 1.9.24-stable
Git Commit: 1725944e46cafc564f225c20d334afee434dc130
Architecture: amd64
Protocol Versions: [65 64 63]
Go Version: go1.15.5
Operating System: linux
GOPATH=/home/ubuntu/go
GOROOT=/home/ubuntu/.go

Once this is confirmed, you will need to check for a parameter in the start.sh file.

# go to ~/node/bor/start.sh and edit the file using your editor
# replace  --heimdall to --bor.heimdall
# You only need to do this if the --heimdall param is there. If it isn't, then you don't need to change anything

Next you need to start the Bor service on your Sentry node.

$ sudo service bor start

Next you can check your logs for bor by running journalctl -u bor -f. Just ensure that your bor logs are running good.

Next, you need to update the same on the Validator machine as well

For Validator Machine

Go to your Node Ansible folder first and then run the following command. Ensure that you stop Bor service on your Validator machine before running this command.

$ ansible-playbook -l validator playbooks/bor.yml --extra-var="bor_branch=v0.2.2"

This will install the latest version for Bor on your Validator machine. Now, login on your Validator Machine and run the following commands

$ ssh <validator-machine-ip>
$ cd ~/bor
$ make bor

This will setup your Bor to the latest version and with updated config. To check your Bor version you can run this command bor version

It should look something like this:

Bor
Version: 1.9.24-stable
Git Commit: 1725944e46cafc564f225c20d334afee434dc130
Architecture: amd64
Protocol Versions: [65 64 63]
Go Version: go1.15.5
Operating System: linux
GOPATH=/home/ubuntu/go
GOROOT=/home/ubuntu/.go

Once this is confirmed, you will need to check for a parameter in the start.sh file.

# go to ~/node/bor/start.sh and edit the file using your editor
# replace  --heimdall to --bor.heimdall
# You only need to do this if the --heimdall param is there. If it isn't, then you don't need to change anything

Next you need to start the Bor service on your Sentry node.

$ sudo service bor start

Next you can check your logs for bor by running journalctl -u bor -f. Just ensure that your bor logs are running good.

If you have any issues, please ping Delroy on Discord and use the #mainnet-validators channel.

Thanks,
Matic Team