Hello All,
New version of Bor v1.3.3 have been released for both Polygon Mainnet and Polygon Amoy. Please upgrade your mainnet and amoy nodes to this version.
Bor v1.3.3 introduces PIP-32 - Ability to prune ancient block data along with a few bug fixes and observability improvements.
Ancient block pruning
This version of bor enables node operators to prune the ancient/historical block data if required. Note that this is different from state pruning, which prunes unused/inactive state from the db. The aim is to remove historical block data (headers, body, and receipts) from the freezer database as they are no longer used for chain verification. This also means that your node will no longer be able to serve RPC queries for those blocks (RPC operators shouldn’t ideally use this).
It is available as a sub-command bor snapshot prune-block [options...]
and the number of blocks to keep (post pruning) is configurable via block-amount-reserved
flag. More details and usage info can be found in the PR itself (https://github.com/maticnetwork/bor/pull/1216).
Important points to note:
- This version is backwards in-compatible if pruning is performed (at least once) on the node.
- This feature is only enabled in
hash
based storage scheme for now and won’t work forpath
based scheme.
Huge shout-out to @jsvisa who initiated the efforts and did most of the implementation in bor.
Steps for upgrading Bor node
-
Stop bor service
sudo service bor stop
-
Install Bor with a version tag, network name (mainnet/amoy), and node type (sentry, validator, or archive).
# Replace the node type curl -L https://raw.githubusercontent.com/maticnetwork/install/main/bor.sh | bash -s -- v1.3.3 <network> <node_type>
-
Check bor version
/usr/bin/bor version Version: 1.3.3 GitCommit: 625774fa781a5b07e9c867a7d5cf9ca9a474d449
-
Restart bor service
sudo service bor start
Bor Changelog
Bug fixes
- eth/tracers: avoid data race when tracing block with bor tx by @easyfold in https://github.com/maticnetwork/bor/pull/1214
- eth: explicitly commented the code were bor could get into snap-sync mode by @pratikspatil024 in https://github.com/maticnetwork/bor/pull/1243
- ethstats: added error handeling in ethstats.go which prevents node to panic by @pratikspatil024 in https://github.com/maticnetwork/bor/pull/1249
- eth: explicitly commented the code were bor could get into snap-sync mode 2.0 by @pratikspatil024 in https://github.com/maticnetwork/bor/pull/1247
- Fix panic when fetching block in case of reorg by @pratikspatil024 in https://github.com/maticnetwork/bor/pull/1259
Observability / P2P
- eth/internal: add
debug.peerStats
for stats related to all connected peers by @manav2401 in https://github.com/maticnetwork/bor/pull/1252 - eth: broadcast block to static and trusted peers as well by @pratikspatil024 in https://github.com/maticnetwork/bor/pull/1258
- eth/fetcher: modify queue limits for improving sync near chain tip by @manav2401 in https://github.com/maticnetwork/bor/pull/1260
Misc
- build(deps): bump golang.org/x/net from 0.22.0 to 0.23.0 by @dependabot in https://github.com/maticnetwork/bor/pull/1225
- Merge master by @anshalshukla in https://github.com/maticnetwork/bor/pull/1241
- Backmerge Master to develop after 1.3.2 release by @pratikspatil024 in https://github.com/maticnetwork/bor/pull/1250
New Contributors
- @easyfold made their first contribution in https://github.com/maticnetwork/bor/pull/1214
Full Changelog: https://github.com/maticnetwork/bor/compare/v1.3.2...v1.3.3
Docker Images
You can find the latest docker images here:
Bor: https://hub.docker.com/r/0xpolygon/bor/tags
Heimdall:https://hub.docker.com/r/0xpolygon/heimdall/tags
Thanks,
Polygon Team