rpc: Use the blocks pinning API for chainHead methods (#13233)
* rpc/chain_head: Add backend to subscription management Signed-off-by:Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head: Pin blocks internally and adjust testing Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * client/in_mem: Reference for the number of pinned blocks Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/tests: Check in-memory references to pinned blocks Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head: Fix clippy Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head: Remove unused comment Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head: Place subscription handle under `Arc` and unpin blocks on drop Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/tests: Check all pinned blocks are unpinned on drop Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * Apply suggestions from code review Co-authored-by:
Bastian Köcher <git@kchr.de> * Update client/rpc-spec-v2/src/chain_head/subscription.rs Co-authored-by:
Bastian Köcher <git@kchr.de> * rpc/tests: Retry fetching the pinned references for CI correctness Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * client/service: Use 512 as maximum number of pinned blocks Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chain_head: Fix merging conflicts Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head: Adjust subscriptions to use pinning API Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head/tests: Test subscription management Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head: Adjust chain_head follow to the new API Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head: Adjust chain_head.rs to the new API Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head/tests: Adjust test.rs to the new API Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * client/builder: Use new chainHead API Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head: Fix documentation Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * rpc/chain_head: Fix clippy Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * client/in_mem: ChainHead no longer uses `in_mem::children` Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * Update client/rpc-spec-v2/src/chain_head/subscription.rs Co-authored-by:
Sebastian Kunert <skunert49@gmail.com> * Update client/rpc-spec-v2/src/chain_head/subscription.rs Co-authored-by:
Sebastian Kunert <skunert49@gmail.com> * Update client/rpc-spec-v2/src/chain_head/subscription.rs Co-authored-by:
Sebastian Kunert <skunert49@gmail.com> * Update client/rpc-spec-v2/src/chain_head/subscription.rs Co-authored-by:
Sebastian Kunert <skunert49@gmail.com> * chain_head: Add block state machine Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * Address feedback Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * Use new_native_or_wasm_executor Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chain_head: Remove 'static on Backend Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chain_head: Add documentation Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chain_head: Lock blocks before async blocks Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chain_head_follower: Remove static on backend Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * Update client/service/src/builder.rs Co-authored-by:
Davide Galassi <davxy@datawok.net> * Update client/service/src/builder.rs Co-authored-by:
Davide Galassi <davxy@datawok.net> * chain_head: Add BlockHeaderAbsent to the PartialEq impl Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * client: Add better documentation around pinning constants Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chain_head: Move subscription to dedicated module Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * subscription: Rename global pin / unpin functions Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> --------- Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> Co-authored-by:
Bastian Köcher <git@kchr.de> Co-authored-by: parity-processbot <> Co-authored-by:
Sebastian Kunert <skunert49@gmail.com> Co-authored-by:
Davide Galassi <davxy@datawok.net>
Showing
- substrate/Cargo.lock 1 addition, 0 deletionssubstrate/Cargo.lock
- substrate/client/api/src/in_mem.rs 23 additions, 2 deletionssubstrate/client/api/src/in_mem.rs
- substrate/client/rpc-spec-v2/Cargo.toml 1 addition, 0 deletionssubstrate/client/rpc-spec-v2/Cargo.toml
- substrate/client/rpc-spec-v2/src/chain_head/chain_head.rs 92 additions, 60 deletionssubstrate/client/rpc-spec-v2/src/chain_head/chain_head.rs
- substrate/client/rpc-spec-v2/src/chain_head/chain_head_follow.rs 14 additions, 10 deletions...te/client/rpc-spec-v2/src/chain_head/chain_head_follow.rs
- substrate/client/rpc-spec-v2/src/chain_head/subscription.rs 0 additions, 285 deletionssubstrate/client/rpc-spec-v2/src/chain_head/subscription.rs
- substrate/client/rpc-spec-v2/src/chain_head/subscription/error.rs 66 additions, 0 deletions...e/client/rpc-spec-v2/src/chain_head/subscription/error.rs
- substrate/client/rpc-spec-v2/src/chain_head/subscription/inner.rs 940 additions, 0 deletions...e/client/rpc-spec-v2/src/chain_head/subscription/inner.rs
- substrate/client/rpc-spec-v2/src/chain_head/subscription/mod.rs 125 additions, 0 deletions...ate/client/rpc-spec-v2/src/chain_head/subscription/mod.rs
- substrate/client/rpc-spec-v2/src/chain_head/tests.rs 149 additions, 2 deletionssubstrate/client/rpc-spec-v2/src/chain_head/tests.rs
- substrate/client/service/src/builder.rs 17 additions, 5 deletionssubstrate/client/service/src/builder.rs
Please register or sign in to comment