Prepare syncing for parallel sync strategies (#3224)
This PR should supersede https://github.com/paritytech/polkadot-sdk/pull/2814 and accomplish the same with less changes. It's needed to run sync strategies in parallel, like running `ChainSync` and `GapSync` as independent strategies, and running `ChainSync` and Sync 2.0 alongside each other. The difference with https://github.com/paritytech/polkadot-sdk/pull/2814 is that we allow simultaneous requests to remote peers initiated by different strategies, as this is not tracked on the remote node in any way. Therefore, `PeerPool` is not needed. CC @skunert --------- Co-authored-by:Sebastian Kunert <skunert49@gmail.com>
parent
e0c902e3
Branches
Pipeline
#444774
canceled
with stages
in
4 minutes and 15 seconds
Stage:
Stage:
Stage:
Stage:
Stage:
Stage:
Showing
- substrate/client/network/sync/src/engine.rs 76 additions, 67 deletionssubstrate/client/network/sync/src/engine.rs
- substrate/client/network/sync/src/justification_requests.rs 4 additions, 0 deletionssubstrate/client/network/sync/src/justification_requests.rs
- substrate/client/network/sync/src/lib.rs 1 addition, 1 deletionsubstrate/client/network/sync/src/lib.rs
- substrate/client/network/sync/src/pending_responses.rs 23 additions, 8 deletionssubstrate/client/network/sync/src/pending_responses.rs
- substrate/client/network/sync/src/strategy.rs 351 additions, 251 deletionssubstrate/client/network/sync/src/strategy.rs
- substrate/client/network/sync/src/strategy/chain_sync.rs 36 additions, 30 deletionssubstrate/client/network/sync/src/strategy/chain_sync.rs
- substrate/client/network/sync/src/strategy/chain_sync/test.rs 51 additions, 21 deletions...trate/client/network/sync/src/strategy/chain_sync/test.rs
- substrate/client/network/sync/src/strategy/state.rs 0 additions, 5 deletionssubstrate/client/network/sync/src/strategy/state.rs
Please register or sign in to comment