Summary
This release addresses a bug in rust-libp2p
which has been causing the Lighthouse networking stack to perform poorly since the v2.1.0 release.
This bug-fix significantly improves peer stability and is recommended for any user who is seeing an erratic peer-count and/or missing attestations due to InsufficientPeers
.
Fix to rust-libp2p
Since the v2.1.0 release, users have been reporting issues with peer stability manifesting as missed attestations.
After months of developer hours investigating this issue and making peer stability improvements via other methods, we are relieved to have identified an obscure but impactful bug in rust-libp2p
.
Whilst user feedback will be the ultimate indicator of success, we are confident that this release will represent a major improvement in peer stability.
Lighthouse relies on a regular "heartbeat" from rust-libp2p
in order to perform many critical tasks. An unfortunate regression in rust-libp2p
caused the heartbeat to become irregular and stretch from a 700ms interval to several minutes. We have raised this issue with the rust-libp2p
developers who have been receptive and are working on a fix. To provide relief to our users, Lighthouse is using a Sigma Prime fork of rust-libp2p
with a hot-fix applied.
Breaking Changes
The Pyrmont network is no longer natively supported by Lighthouse (#2543). This means that the --network pyrmont
flag will no longer work.
Since the Pyrmont testnet is abandoned and in a state of disarray, we do not expect this to be of concern to our users. The Prater testnet has superseded the Pyrmont testnet.
Users can still opt to use the --testnet-dir
flag to manually sync the Prymont network, if desired.
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 | Medium Priority | Low Priority |
Non-Staking Users | Medium Priority | --- |
See Update Priorities for more information about this table.
All Changes
- v2.1.3 (#3017)
- Remove Pyrmont testnet (#2543)
- libp2p upgrade + gossipsub interval fix (#3012)
- Add "update priority" (#2988)
- Allow per validator fee recipient via flag or file in validator client (similar to graffiti / graffiti-file) (#2924)
- Bump crossbeam-utils to fix cargo-audit CI failure (#3004)
- Fix Docker run -p for both TCP and UDP (#2998)
- Gossip cache timeout adjustments (#2997)
- Correct a dial race condition (#2992)
- upgrade libp2p (#2933)
- Retry gossipsub messages when insufficient peers (#2964)
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.3-x86_64-apple-darwin.tar.gz | PGP Signature | |
x86_64 | lighthouse-v2.1.3-x86_64-apple-darwin-portable.tar.gz | PGP Signature | |
x86_64 | lighthouse-v2.1.3-x86_64-unknown-linux-gnu.tar.gz | PGP Signature | |
x86_64 | lighthouse-v2.1.3-x86_64-unknown-linux-gnu-portable.tar.gz | PGP Signature | |
aarch64 | lighthouse-v2.1.3-aarch64-unknown-linux-gnu.tar.gz | PGP Signature | |
aarch64 | lighthouse-v2.1.3-aarch64-unknown-linux-gnu-portable.tar.gz | PGP Signature | |
x86_64 | lighthouse-v2.1.3-x86_64-windows.tar.gz | PGP Signature | |
x86_64 | lighthouse-v2.1.3-x86_64-windows-portable.tar.gz | PGP Signature | |
System | Option | - | Resource |
Docker | v2.1.3 | sigp/lighthouse |