github hyperledger/besu 1.5.0

latest releases: 24.4.0-RC3, 24.3.3, 24.3.2...
3 years ago

1.5 Breaking changes

When upgrading to 1.5, ensure you've taken into account the following breaking changes.

Docker users with volume mounts

To maintain best security practices, we're changing the user:group on the Docker container to besu.

What this means for you:

  • If you are running Besu as a binary, there is no impact.
  • If you are running Besu as a Docker container and have a volume mount for data, ensure that the
    permissions on the directory allow other users and groups to r/w. Ideally this should be set to
    besu:besu as the owner.

Note that the besu user only exists within the container not outside it. The same user ID may match
a different user outside the image.

If you’re mounting local folders, it is best to set the user via the Docker —user argument. Use the
UID because the username may not exist inside the docker container. Ensure the directory being mounted
is owned by that user.

Remove Manual NAT method

The NAT manager MANUAL method has been removed.
If you have have been using the MANUAL method, use the NONE method instead. The behavior of the
NONE method is the same as the previously supported MANUAL methods.

Privacy users

Besu minor version upgrades require upgrading Orion to the latest minor version. That is, for
Besu <> Orion node pairs, when upgrading Besu to v1.5, it is required that Orion is upgraded to
v1.6. Older versions of Orion will no longer work with Besu v1.5.

1.5 Features

Features added between from 1.4 to 1.5 include:

  • Mining Support
    Besu supports eth_hashrate and eth_submitHashrate to obtain the hashrate when we mine with a GPU mining worker.
  • Tracing
    The Tracing API is no longer an Early Access feature and now has full support for trace_replayBlockTransactions, trace_Block and trace_transaction.
  • Plugin API Block Events
    BlockAdded and BlockReorg are now exposed via the Plugin API.
  • Filters and
    subscriptions for private contracts.
  • SecurityModule Plugin API
    This allows use of a different security module
    as a plugin to provide cryptographic function that can be used by NodeKey (such as sign, ECDHKeyAgreement etc.).
  • Onchain privacy groups
    with add and remove members. This is an early access feature. Early access features are not recommended
    for production networks and may have unstable interfaces.

1.5 Additions and Improvements

  • Public Networks Default to Fast Sync: The default sync mode for named permissionless networks, such as the Ethereum mainnet and testnets, is now FAST.
    • The default is unchanged for private networks. That is, the sync mode defaults to FULL for private networks.
    • Use the --sync-mode command line option to change the sync mode. #384
  • Proper Mining Support: Added full support for eth_hashrate and eth_submitHashrate. It is now possible to have the hashrate when we mine with a GPU mining worker #1063
  • Performance Improvements: The addition of native libraries (#775) and changes to data structures in the EVM (#1089) have improved Besu sync and EVM execution times.
  • Tracing API Improvements: The Tracing API is no longer an Early Access feature and now has full support for trace_replayBlockTransactions, trace_Block and trace_transaction.
  • New Plugin API Block Events: BlockAdded and BlockReorg are now exposed via the Plugin API #637.
  • Added experimental CLI option --Xnat-kube-pod-name to specify the name of the loadbalancer used by the Kubernetes nat manager #1078
  • Local permissioning TOML config now supports additional keys (nodes-allowlist and accounts-allowlist).
    Support for nodes-whitelist and accounts-whitelist will be removed in a future release.
  • Add missing mixHash field for eth_getBlockBy* JSON RPC endpoints. #1098
  • Besu now has a strict check on private transactions to ensure the privateFrom in the transaction
    matches the sender Orion key that has distributed the payload. Besu 1.5+ requires Orion 1.6+ to work.
    #357

Bug fixes

No bug fixes with user impact in this release.

Known Issues

Known issues are open issues categorized as Very High or High impact.

New known issues

  • K8S permissioning uses of Service IPs rather than pod IPs which can fail. #1190
    Workaround - Do not use permissioning on K8S.

  • Restart caused by insufficient memory can cause inconsistent private state. #1110
    Workaround - Ensure you allocate enough memory for the Java Runtime Environment that the node does not run out of memory.

Previously identified known issues

  • Scope of logs query causing Besu to hang
  • Eth/65 loses peers
  • Fast sync when running Besu on cloud providers
  • Privacy users with private transactions created using v1.3.4 or earlier

Download link

https://dl.bintray.com/hyperledger-org/besu-repo/besu-1.5.0.zip
sha256sum: 56929d6a71cc681688351041c919e9630ab6df7de37dd0c4ae9e19a4f44460b2

For download links of releases prior to 1.5.0, please visit https://dl.bintray.com/hyperledger-org/besu-repo/

Don't miss a new besu release

NewReleases is sending notifications on new releases.