lighthouse/beacon_node
Age Manning cc44a64d15 Limit parallelism of head chain sync (#1527)
## Description

Currently lighthouse load-balances across peers a single finalized chain. The chain is selected via the most peers. Once synced to the latest finalized epoch Lighthouse creates chains amongst its peers and syncs them all in parallel amongst each peer (grouped by their current head block). 

This is typically fast and relatively efficient under normal operations. However if the chain has not finalized in a long time, the head chains can grow quite long. Peer's head chains will update every slot as new blocks are added to the head. Syncing all head chains in parallel is a bottleneck and highly inefficient in block duplication leads to RPC timeouts when attempting to handle all new heads chains at once. 

This PR limits the parallelism of head syncing chains to 2. We now sync at most two head chains at a time. This allows for the possiblity of sync progressing alongside a peer being slow and holding up one chain via RPC timeouts.
2020-08-18 02:49:24 +00:00
..
beacon_chain Ignore blocks that skip a large distance from their parent (#1530) 2020-08-17 10:54:58 +00:00
client Ignore blocks that skip a large distance from their parent (#1530) 2020-08-17 10:54:58 +00:00
eth1 Cross-compile to vendored x86_84, aarch64 (Raspberry Pi 4) (#1497) 2020-08-11 05:16:30 +00:00
eth2_libp2p Revert back to discv5 alpha 8 to maintain ARM support (#1531) 2020-08-17 10:06:08 +00:00
genesis Lighthouse crate v0.2.0 bump (#1450) 2020-08-06 03:43:05 +00:00
network Limit parallelism of head chain sync (#1527) 2020-08-18 02:49:24 +00:00
operation_pool Lighthouse crate v0.2.0 bump (#1450) 2020-08-06 03:43:05 +00:00
rest_api Wind down the SSE thread when the client disconnects (#1514) 2020-08-13 06:12:18 +00:00
src Ignore blocks that skip a large distance from their parent (#1530) 2020-08-17 10:54:58 +00:00
store Memory usage reduction (#1522) 2020-08-17 08:05:13 +00:00
tests Improve tokio task execution (#1181) 2020-06-04 21:48:05 +10:00
timer Lighthouse crate v0.2.0 bump (#1450) 2020-08-06 03:43:05 +00:00
websocket_server Lighthouse crate v0.2.0 bump (#1450) 2020-08-06 03:43:05 +00:00
Cargo.toml Prepare for v0.2.4 (#1533) 2020-08-17 12:13:42 +00:00