chainHead: Add support for storage pagination and cancellation (#14755)
* chainHead/api: Add `chain_head_unstable_continue` method Signed-off-by:Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/subscriptions: Register operations for pagination Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/subscriptions: Merge limits with registered operation Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/subscriptions: Expose the operation state Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chain_head/storage: Generate WaitingForContinue event Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead: Use the continue operation Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/tests: Adjust testing to the new storage interface Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/config: Make pagination limit configurable Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/tests: Adjust chainHeadConfig Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/tests: Check pagination and continue method Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/api: Add `chainHead_unstable_stopOperation` method Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/subscription: Add shared atomic state for efficient alloc Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead: Implement operation stop Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/tests: Check that storage ops can be cancelled Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/storage: Change docs for query_storage_iter_pagination Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/subscriptions: Fix merge conflicts Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead: Replace `async-channel` with `tokio::sync` Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> * chainHead/subscription: Add comment about the sender/recv continue Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io> --------- Signed-off-by:
Alexandru Vasile <alexandru.vasile@parity.io>
Showing
- substrate/client/rpc-spec-v2/src/chain_head/api.rs 27 additions, 0 deletionssubstrate/client/rpc-spec-v2/src/chain_head/api.rs
- substrate/client/rpc-spec-v2/src/chain_head/chain_head.rs 63 additions, 19 deletionssubstrate/client/rpc-spec-v2/src/chain_head/chain_head.rs
- substrate/client/rpc-spec-v2/src/chain_head/chain_head_storage.rs 130 additions, 71 deletions...e/client/rpc-spec-v2/src/chain_head/chain_head_storage.rs
- substrate/client/rpc-spec-v2/src/chain_head/subscription/inner.rs 206 additions, 53 deletions...e/client/rpc-spec-v2/src/chain_head/subscription/inner.rs
- substrate/client/rpc-spec-v2/src/chain_head/subscription/mod.rs 8 additions, 0 deletions...ate/client/rpc-spec-v2/src/chain_head/subscription/mod.rs
- substrate/client/rpc-spec-v2/src/chain_head/tests.rs 315 additions, 9 deletionssubstrate/client/rpc-spec-v2/src/chain_head/tests.rs
Please register or sign in to comment