Skip to content

v21.4.0

Compare
Choose a tag to compare
@github-actions github-actions released this 06 Apr 18:31
fb10484

This release mainly focuses on merging upgrades from go-ethereum (from version v1.9.7 up to v1.9.20). For a full rundown of the go-ethereum changes please consult this link.

⚠️ WARNING: some small breaking changes have been introduced so please carefully review the section below before upgrading.

Important Note: We changed the package manager for official GoQuorum binaries. We so far used Bintray which is sunsetting in May 2021. From now on you will be able to download GoQuorum official binaries from Cloudsmith (see section Breaking Changes below).

Enhancements

  • 🎉 [Geth Upgrade] Merge go-ethereum changes from v1.9.8 to v1.9.20. Some important changes are:
    • Node Discovery via DNS is enabled. #1121
    • Implementation of eth/65 - #1121
    • Persist the trie read cache on shutdown to speed up warm-up time after a reboot. #1146
    • Blockchain rewinding and chain repair, i.e. using the SetHead operation, now behave
      correctly in all cases. An extensive test suite for chain repair has been added. This closes issue #1117.
    • New --txlookuplimit flag which specifies the number of recent blocks you want to maintain the search index for (by default it's 0 = since genesis) - #1130/
    • The default value for --rpc.gascap is now 25M gas. It previously defaulted to unlimited gas. This applies to eth_call and will reject calls which request more gas than the cap - #1132
    • Renamed rpc flags to http. rpc flags are marked as Deprecated (for example, --rpc.port is now --http.port).
      #1130
    • Using Go Modules instead of Vendor folder - #1112
  • Enable to connect GoQuorum to the Privacy Transaction Manager (for example, Tessera)over http/https connection instead of the Unix socket. #1109
  • Enable support for multiple Ethereum sub-protocols. In particular, we added istanbul/100 sub-protocol for QBFT consensus messages. #1129

Others

  • [Debugging] Add new RPC API called debug_privateStateRoot. #1148
  • [CI/CD] Migration to Cloudsmith. #1151

Breaking Changes

  • [Database schema] Please note that reverting to GoQuorum v21.1.0 or prior version after upgrading to v21.4.0 is not possible without a resync because the blockchain database layout has changed. Contract code is now stored separately from state tree data in LevelDB.

    In case you have upgraded to v21.4.0 and you want to revert back to a previous version, you should use the following commands with the previous version:

      geth removedb --datadir <data dir>
      geth init ./genesis.json --datadir  <data dir>
      <start geth again>
    
  • [GraphQL flags] If you were using GraphQL previously, now it has moved to the HTTP RPC endpoint. The old --graphql.host and --graphql.port flags will not work any more. You might need to adjust your TOML config files accordingly too. #1146

  • [Cloudsmith Migration] All official GoQuorum binaries download URLs have been upgraded. For example, GoQuorum v21.1.0 for Linux AMD64 moved to https://artifacts.consensys.net/public/go-quorum/raw/versions/v21.1.0/geth_v21.1.0_linux_amd64.tar.gz (Cloudsmith).

    Old Bintray download URLs will remain available until May 1st 2021 later to this date you will have to download binaries from Cloudsmith

  • One small breaking change in the release is that eth_call will not default to your first account any more if you don't explicitly specify a sender. #1122

Binaries

Filename SHA256 Hash
geth_v21.4.0_darwin_amd64.tar.gz 063bb7325154a20cf00e0f2ea9d9b521b24d807afc6fad350302888a84d25f5f
geth_v21.4.0_linux_amd64.tar.gz 3592bfa58a348f46fdc7af0bf5bdb58cb464c931ee434a5223651480f494416e