Sync: Propagate block announcement data (#7903)
* Sync: Propagate block announcement data This pr adds a feature to the sync protocol to propagate the data that we received alongside a block announcement. This is done by adding a cache that caches the last X block announcement data where X is set to the number of `in_peers` (giving every peer the chance to send us a different block). This will be required by parachains to ensure that even peers who are not connected to a collator receive the data alongside the block announcement to properly validate it and request the block. * Review comment * Bring back the code and add new variant to ensure we don't insert block announce data when something wasn't checked * Also use out_peers
Showing
- substrate/Cargo.lock 4 additions, 3 deletionssubstrate/Cargo.lock
- substrate/client/finality-grandpa/src/communication/mod.rs 1 addition, 1 deletionsubstrate/client/finality-grandpa/src/communication/mod.rs
- substrate/client/finality-grandpa/src/communication/tests.rs 1 addition, 1 deletionsubstrate/client/finality-grandpa/src/communication/tests.rs
- substrate/client/network-gossip/src/bridge.rs 2 additions, 2 deletionssubstrate/client/network-gossip/src/bridge.rs
- substrate/client/network-gossip/src/lib.rs 2 additions, 2 deletionssubstrate/client/network-gossip/src/lib.rs
- substrate/client/network-gossip/src/state_machine.rs 1 addition, 1 deletionsubstrate/client/network-gossip/src/state_machine.rs
- substrate/client/network/Cargo.toml 1 addition, 0 deletionssubstrate/client/network/Cargo.toml
- substrate/client/network/src/protocol.rs 30 additions, 5 deletionssubstrate/client/network/src/protocol.rs
- substrate/client/network/src/protocol/sync.rs 42 additions, 36 deletionssubstrate/client/network/src/protocol/sync.rs
- substrate/client/network/src/service.rs 2 additions, 2 deletionssubstrate/client/network/src/service.rs
- substrate/client/network/test/src/lib.rs 49 additions, 11 deletionssubstrate/client/network/test/src/lib.rs
- substrate/client/network/test/src/sync.rs 62 additions, 7 deletionssubstrate/client/network/test/src/sync.rs
- substrate/client/service/src/lib.rs 1 addition, 1 deletionsubstrate/client/service/src/lib.rs
Please register or sign in to comment