github sigp/lighthouse v2.1.4
Magnesium-J

latest releases: v5.1.3, v5.1.2, v5.1.1...
2 years ago

Summary

This release contains optimisations to P2P networking to improve validator performance. It also contains new functionality for The Merge and out-of-the-box support for the Kiln testnet via the --network kiln flag.

This release will increase the default peer count from 50 to 80. Users who don't specify a custom --target-peers value should see an increased peer count after updating. This is normal and expected.

Other notable features include:

  • Ignore non-routable IPs in discovery (#3023)
    • See the "Breaking Changes" section for more details.
  • Removal of unnecessary error/warning logs related to sync committees (#2999, #3086)
  • Support for requesting proposer duties for the next epoch via the HTTP API (#2963)
  • Addition of an API to compute block packing efficiency (#2879)
  • Improved performance when a VC encounters timeout errors for a BN (#3022)
  • Addition of --validator-dir alias, to aid usability (#3034)
  • Fixes to missing quotes on integer values on the API (#3074, #3080)

Increased Peer Count

Ensuring peak performance on the P2P network frequently involves trade-offs between bandwidth usage and ensuring there is a diverse and useful set of peers. The trade-off space varies over time as the network increases in size and as different implementations evolve.

As described in this comment, increasing the default peer count from 50 to 80 has shown to provide significant benefits in peer management whilst making a less significant impact on network bandwidth.

The upside of this change is that we expect less "InsufficientPeers" errors, therefore reducing penalties caused by missed/late attestations or sync messages. The downside is that we expect users to notice a ~50% increase in bytes transmitted on the network and a ~15% increase in bytes recieved (mileage may vary).

Users who prefer minimal bandwidth are free to use --target-peers 50 and maintain the status-quo. That being said, we expect most users will be happy with the new default value of 80.

Breaking Changes

Discovery and Non-Routable IPs

In #3032, Lighthouse now ignores non-globally-routable IP addresses during discovery. This prevents some cloud providers (e.g., Hetzner) from banning Lighthouse under the (false) premise that it is maliciously scanning the private network.

We only expect this to impact developers running local testnets and enterprise users with sophisticated internal P2P routing. This change can be reverted by adding the --enable-private-discovery flag to the BN.

Kintsugi

The Kintsugi testnet is not supported by this release. Users should prefer Kiln.

VC and BN Update Procedure

The VC and BN between this release and the previous are compatible. You may update them independently.

Update Priority

This table provides priorities for which classes of users should update particular components.

User Class Beacon Node Validator Client
Staking Users Low Priority Low Priority
Non-Staking Users Low Priority ---

See Update Priorities for more information about this table.

All Changes

  • v2.1.4 (#3076)
  • Ignore attestations to finalized blocks (don't reject) (#3052)
  • Lower debug! logs to trace! (#3053)
  • Rename random to prev_randao (#3040)
  • Custom RPC request management for sync (#3029)
  • Update libp2p (#3039)
  • Filter non global ips from discovery (#3023)
  • Rename Eth1/Eth2 in documents (#3021)
  • Increase default target-peer count to 80 (#3005)
  • Enforce Optimistic Sync Conditions & CLI Tests (v2) (#3050)
  • Cleanup small issues (#3027)
  • Retrospective invalidation of exec. payloads for opt. sync (#2837)
  • Update to Rust 1.59 and 2021 edition (#3038)
  • Ensure logfile respects the validators-dir CLI flag (#3003)
  • Add aliases for validator-dir flags (#3034)
  • Avoid hogging the fallback status lock in the VC (#3022)
  • Increase Bors timeout, refine target-branch-check (#3035)
  • Add API to compute block packing efficiency data (#2879)
  • Allow proposer duties request for the next epoch (#2963)
  • Fix sync committee polling for 0 validators (#2999)
  • Improved peer management (#2993)
  • Use SmallVec in Bitfield (#3025)
  • Engine API v1.0.0.alpha.6 + interop tests (#3024)
  • Update to consensus-specs v1.1.9 (#3016)
  • Update block reward API docs (#3013)

Binaries

See pre-built binaries documentation.

The binaries are signed with Sigma Prime's PGP key: 15E66D941F697E28F49381F426416DC3F30674B0

System Architecture Binary PGP Signature
x86_64 lighthouse-v2.1.4-x86_64-apple-darwin.tar.gz PGP Signature
x86_64 lighthouse-v2.1.4-x86_64-apple-darwin-portable.tar.gz PGP Signature
x86_64 lighthouse-v2.1.4-x86_64-unknown-linux-gnu.tar.gz PGP Signature
x86_64 lighthouse-v2.1.4-x86_64-unknown-linux-gnu-portable.tar.gz PGP Signature
aarch64 lighthouse-v2.1.4-aarch64-unknown-linux-gnu.tar.gz PGP Signature
aarch64 lighthouse-v2.1.4-aarch64-unknown-linux-gnu-portable.tar.gz PGP Signature
x86_64 lighthouse-v2.1.4-x86_64-windows.tar.gz PGP Signature
x86_64 lighthouse-v2.1.4-x86_64-windows-portable.tar.gz PGP Signature
System Option - Resource
Docker v2.1.4 sigp/lighthouse

Don't miss a new lighthouse release

NewReleases is sending notifications on new releases.