Skip to content

Releases: bnb-chain/bsc

v1.3.4

04 Dec 11:17
Compare
Choose a tag to compare

Attention

If your node meet the following 2 condition and it failed to sync after upgrade to v1.3.4 or v1.2.15, you may need to download the fastnode snapshot and sync again: https://github.com/48Club/bsc-snapshots.

  • running fast node(--tries-verify-mode=none)
  • did not upgrade to v1.3.4 or v1.2.15 before the Hertzfix hard fork, 07th Dec ~8am UTC

Refer: #2046

Description

This is a bugfix hard fork release named: Hertzfix, check About The HertzFix

Hardfork will be enabled:

All BSC node operators will be required to upgrade their node, depending on the current version that you are using:

  • If you are using v1.2.x BSC, pls upgrade to v1.2.15
  • If you are using v1.3.x BSC, pls upgrade to v1.3.4

Attention
Since v1.3.3, the flags --txlookuplimit has been abandoned and replaced by --history.transactions. Make sure you no longer use --txlookuplimit, otherwise the node will crash.

Changelog

BUGFIX

  • fix: remove pipecommit in miner
  • add a hard fork: Hertzfix

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux eca561863b1db895a7ccc7f041c19f98ac75aa16aeeafacffd738582d4bbc296
geth_mac c29714a61eadbf98a93761707e56913cea3494e61c26b01bd08884e66e76d8c5
geth_windows 03f67e8fb3fd504f34ac9f6a72d63a4788d31cd96b95a73e03c336bb40fd5ec7
geth_linux_arm64 6c13fb89bf9d2bb604c0c333e8c84e2e6e015a4aa1dd6e74942aca3e98996cd9

v1.2.15

04 Dec 11:14
Compare
Choose a tag to compare

Description

This is a bugfix hard fork release named: Hertzfix, we will reveal more detail later.

Hardfork will be enabled:

All BSC node operators will be required to upgrade their node, depending on the current version that you are using:

  • If you are using v1.2.x BSC, pls upgrade to v1.2.15
  • If you are using v1.3.x BSC, pls upgrade to v1.3.4

Changelog

BUGFIX

  • fix: remove pipecommit in miner
  • add a hard fork: Hertzfix

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux a0e2e4362506e7711a3de88ec65d5da9d64400af2b4cd9a2049d7acbebbf4edf
geth_mac 19e005f5743f60754c51b39d6b0fc3407cdbdaeb10909c816739233e9f24060c
geth_windows 8e6eb8d4c0454716ce6aaf4756b3a9b3c3f0e31b3fab202ec01b47d4ce4f6079
geth_linux_arm64 0048079319c9f8f9b1f6283579a6a6971978b7e9fcda20d4d99a7038aaa17083

v1.3.3(Deprecated)

30 Nov 02:17
Compare
Choose a tag to compare
v1.3.3(Deprecated) Pre-release
Pre-release

Changelog

Notice:
We got feedback from community that they can not start their node with v1.3.2 based on the snapshot provided by 48Club, the issue was already solved and code has been merged to develop.
This release is mainly to make it easier for these 48Club snapshot users.
And also --txlookuplimit was abandoned officially since v1.3.3, replaced by flag: --history.transactions

IMPROVEMENT

  • #2000 cmd/utils: exit process if txlookuplimit flag is set

BUGFIX

  • #1986 fix(cmd): check pruneancient when creating db

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux e41bcc41e49a9045f33c87784a7af7c256ef078dfb32c27aa9fa152e1ef18676
geth_mac 3374039899e69da504eb37fa57b860b5bdddd5b302ef45e8bdb2b589cadb1b05
geth_windows 54edb0c7377138a4be7d7975a3fa4e4446730da8c811f7923549b4aadeaad5ae
geth_linux_arm64 4d701fe5e45aa0b781c130983e9c3217ec1592cdf63493bfb8f0d66f0e68d10b

v1.3.2(Deprecated)

29 Nov 07:52
Compare
Choose a tag to compare
v1.3.2(Deprecated) Pre-release
Pre-release

Changelog

Attention:
Since v1.3.1, the flags --txlookuplimit has been replaced by --history.transactions. Make sure you no longer use --txlookuplimit, otherwise, could have performance issue.

BUGFIX

fix: remove sharedPool

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux cf2fd66751f1a5874cc3076410c6dc3bc2104c91da28011252fe971d3ef31f7b
geth_mac 6d66bca0d9ecc8d2caf5472566be712a8ab27114cc47ab9d2073120bdafb21be
geth_windows 8474972e577b2a4e1986f7f0e9a04a6665b2a4958980b2b64c261167c485393c
geth_linux_arm64 141afece7bf045a35b2d7acbf48be93b0e146da1c54ef4c72e080ac86b7ba5fa

v1.2.14(Deprecated)

29 Nov 07:06
Compare
Choose a tag to compare
v1.2.14(Deprecated) Pre-release
Pre-release

Changelog

BUGFIX
fix: remove sharedPool

Assets

Assets Sha256 Checksum
mainnet.zip aeeae3392bd51af57fb1e2eddeefff7e84d58a37f87513495348d82deee5824f
testnet.zip bcb79b8731c50ddaa3a5a2e3e92afa4f04b0c04c72b6b37b8a69ecd776304f15
geth_linux 5b06ded57f1bc033feedae8b07500c2c3b49f4f0e75688a1dca4638229ab63fb
geth_mac f58bcc3805728e9df3b2a9c89f403187da2c6e722d92a98125b1371fa8746783
geth_windows 00b8d018aa681ad91795f0d5a13afd6bfac0b7adbb00872ea5fdf71b6b317fcb
geth_linux_arm64 c3a9cac849620cf59b91b257dd51651ed9d65360dd4baac1d97715a1173fa1ad

v1.3.1-beta

10 Nov 11:48
1dca486
Compare
Choose a tag to compare

We will use version control suffix like: "-alpha", "-beta" to show the status of the release.
For this release: v1.3.1-beta, it means this release is basically fine but validators or node operators would better use it cautiously.

Description

Release v1.3.1-beta is another maintenance release, it mainly has these changes:

  • 1.Support PBSS
  • 2.Performance Improvement, it reduced the validation cost dramatically.
  • 3.Dependency upgrade, especially upgrade Golang from v1.19 to v1.20 and several other dependencies.

About PBSS

PBSS stands for: Path-Based-Storage-Scheme, which is used to optimize the MPT trie tree access, to improve its efficiency and also brings the inline state prune. You could refer this post on how it works: Geth Path-Based Storage Model and Newly Inline State Prune

Currently, PBSS is disabled by default, use this new flag to enable it: --state.scheme path
Important
Before use PBSS, you need to make sure your MPT storage in levelDB are already in PBSS format. There are 2 options to get the PBSS storage:

  • 1.Full sync from genesis with the flag: --state.scheme path. // Not recommend, could take 3 months to catch up the latest block.
  • 2.Use the converting tool, refer: #1882. // Recommend, could take ~3 days to complete the MPT convert from HashBased to PBSS.

Another thing worth to note is that in the high-pressure situation of the BSC validator scenario, the nodebuffer disk writing of PBSS will become a performance bottleneck. We have optimized this and made the disk writing operation become asynchronous in the background by using asynnodebuffer.

Compatibility

PBSS will have a new MPT storage scheme, although it is still based the Key/Value database, like LevelDB. HashBased storage could not use PBSS and vice versa.

Changelog

FEATURE

  • #1881 feat: active pbss
  • #1882 cmd/geth: add hbss to pbss convert tool
  • #1916 feat: cherry-pick pbss patch commits from eth repo in v1.13.2
  • #1939 dependency: go version to 1.20 and some dependencies in go.mod
  • #1955 eth, trie/triedb/pathdb: pbss patches
  • #1962 cherry pick pbss patches from go-ethereum

BUGFIX

  • #1923 consensus/parlia: fix nextForkHash in Extra filed of block header
  • #1950 fix: 2 APIs of get receipt related
  • #1951 txpool: fix a potential crash issue in shutdown;
  • #1963 fix: revert trie commited flag after delete statedb mpt cache

IMPROVEMENT

  • #1948 performance: commitTire concurrently
  • #1949 code: remove accountTrieCache and storageTrieCache
  • #1954 trie: keep trie prefetch during validation phase

Assets

Assets Sha256 Checksum
mainnet.zip a7e17cbd8533a5735bca57a03fd7519687a6de6f7484e99bcbf1d50721200716
testnet.zip b26fe88ccb52f540a95cbf749503130f6dd38eb8d361b7ef87aaf9ee2d473ed9
geth_linux e946aba5a84351081c4c1bff25e374a5b17c89f1437383b0fe989f0498ba1c77
geth_mac 3b3f020716f9b2b2a1967a9e5f4a181ce79c2c5d7bebee08dcd0b0513d144de8
geth_windows 03ccd2728a1810e6e4fb1a4237d507ba622337b65d16414a1b4c504f328a9cf9
geth_linux_arm64 72f69b0e6b79cd5ca97d7b791dd985b2ee4f5db13b359360070649cfda998344

v1.2.13

03 Nov 02:49
4f82f18
Compare
Choose a tag to compare

Release v1.2.13 is a maintenance release.
It is based on v1.2.12 with only 2 PRs: one is for performance enhancement, the other one is to fix 2 RPC APIs.
It does not contain the large code changes of v1.3.0, so it could be more reliable.

v1.2.13 has great performance improvement to calculate the root hash of some big contracts. Validator and full node operators are suggested to upgrade to this version.

Changelog

IMPROVEMENT

  • #1954 performance: keep trie prefetch during validation phase

BUGFIX

Assets

Assets Sha256 Checksum
mainnet.zip a7e17cbd8533a5735bca57a03fd7519687a6de6f7484e99bcbf1d50721200716
testnet.zip b26fe88ccb52f540a95cbf749503130f6dd38eb8d361b7ef87aaf9ee2d473ed9
geth_linux 25d8dc6a863409446f1183af18b337859976d6578f98354e3b81c2027fcd2b4d
geth_mac 311563a18be604187f94b993b3a6d7074eb4f9255739861148492fa494a8dd26
geth_windows d5a8fd49087701103d48a837dd23aea1d5d9e586788b9402c325bec20899053b
geth_linux_arm64 53c0c3e883b84619e9a87666587e023bbc0a8981c67c50e0e9ffd07bcb2d1b36

v1.3.0

12 Oct 03:06
b86459a
Compare
Choose a tag to compare
v1.3.0 Pre-release
Pre-release

Attention

Do not use this version on critical business!!!

This is a maintenance release with huge code changes for upstream catch up.
Although many tests have been done before release, there could still have many potential bugs and need more time to verify its reliability.
It's better to use this version cautiously and it is not recommended to use it on critical business. User can help try it out on some none critical environment and would be appreciated to report issues that you found.
We have already found some performance decline in this release and we will improve it in the following releases.

Usage Changes

** OptionUltraLightFraction & Noverify are no longer supported and should be removed from config.toml
** Options of [Eth.Ethash] are no longer supported and should be removed from config.toml
** Validators need to specify the etherbase address by add this argument on node start up: --miner.etherbase <your coinbase addr>

Changelog

RPC

Flag

GraphQL

Client

Tracer

Command

Read more

v1.2.12

11 Sep 09:57
bb6bdc0
Compare
Choose a tag to compare

Description

Release v1.2.12 is a maintenance release for BSC mainnet and testnet.
It mainly support BootNodes on BSC mainnet, it would be easier for user to sync with the BSC network. User no longer need to setup the StaticNodes in config.toml any more, just leave empty and make sure delete the BootstrapNodes field in config.toml, may check the mainnet.zip of this release.
And it also fixed three bugs to make the node more reliable, not critical bugs, pls check the change log for detail.

You may refer this post on how to use BootNodes: https://forum.bnbchain.org/t/try-bootnodes-after-bsc-release-v1-2-12/1998

Changelog

FEATURE

  • #1852 discov: add hardcoded bootnodes

BUGFIX

  • #1844 crypto: Update BLST to v0.3.11
  • #1854 fetcher: no import blocks before or equal to the finalized height
  • #1855 eth/tracers: trace system tx should add intrinsicGas

IMPROVEMENT

  • #1839 Update init-network command
  • #1858 vote: check consensus key match vote key before voting

Assets

Assets Sha256 Checksum
mainnet.zip 4fc78d0a1f2e15764ed2ec72ada5cb3d0e0f2d59fdf873fedd8f5057be8198f1
testnet.zip b26fe88ccb52f540a95cbf749503130f6dd38eb8d361b7ef87aaf9ee2d473ed9
geth_linux fc51b3c67893effa5236cf707495286257bdfa98a024b166c3c540d3b83bb0c7
geth_mac 2d6b016ee594a4b6b891821221ed4a117a95276fee50f9963862b6cf2728954f
geth_windows 07f32d1ef3e591273818eb129b4880a3769949dc323b2d43b852b4467e8f149b
geth_linux_arm64 870daa20e25c088748d6f290fb1244ae4bf0a86d9b22707507bf9f63cfd5e914

v1.2.11

23 Aug 03:42
7a19cd2
Compare
Choose a tag to compare

This is another maintenance release for BSC mainnet and testnet.
It mainly fixed a sync bug, for peers that are lagging behind too much blocks(>90,000), it may not be able to sync.

And it also provides a new option to disable attestation: --disablevoteattestation on some special cases and the option --disablebscprotocol was abandoned.

Changelog

FEATURE

  • #1797 client: add FinalizedHeader/Block to use the fast finality
  • #1805 vote: remove DisableBscProtocol and add flag to skip votes assmebling

BUGFIX

  • #1829 fix: lagging nodes failed to sync

Assets

Assets Sha256 Checksum
mainnet.zip 4fc78d0a1f2e15764ed2ec72ada5cb3d0e0f2d59fdf873fedd8f5057be8198f1
testnet.zip b26fe88ccb52f540a95cbf749503130f6dd38eb8d361b7ef87aaf9ee2d473ed9
geth_linux 5829efd0f866ec2726c260f4c840bcfecb9faff36257a0ff62b0f5a50346a75d
geth_mac 3f22170b5e2f3eefcea45f7709c800a291c294bd7e38656aac7254629db83cdb
geth_windows 480b7a3bc48712d34424cef8dddd1a95a0e16793fea762579b7fdb136cef3c53
geth_linux_arm64 714a0160dc17963343002eb9dfa8a3ea9b31db63aac534899d88deec3ad9c221