Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RPC-Spec-V2] archive: Implement archive_unstable_storage #1512

Closed
Tracked by #1516
lexnv opened this issue Sep 12, 2023 · 0 comments · Fixed by #1846
Closed
Tracked by #1516

[RPC-Spec-V2] archive: Implement archive_unstable_storage #1512

lexnv opened this issue Sep 12, 2023 · 0 comments · Fixed by #1846
Labels
I5-enhancement An additional feature request.

Comments

@lexnv
Copy link
Contributor

lexnv commented Sep 12, 2023

Implement archive_unstable_storage method:

  • Fetching the value of a key (this is part of the current behavior, both for root trie and child tries)
  • Fetching the hash of the value of a key
  • Fetching the closest ancestor markle value
  • Iterating over keys and values (paginated by the server)
  • Iterating over keys and hashes of values (paginated by the server)
  • Support for pagination via archive_unstable_storageContinue

Extracted from the spec:

Priorwork:

Builds on top of:

Blocked by:

@paritytech/subxt-team

@lexnv lexnv added the I5-enhancement An additional feature request. label Sep 12, 2023
github-merge-queue bot pushed a commit that referenced this issue Jan 15, 2024
This PR implements the `archive_unstable_storage` method that offers
support for:
- fetching values
- fetching hashes
- iterating over keys and values
- iterating over keys and hashes
- fetching merkle values from the trie-db

A common component dedicated to RPC-V2 storage queries is created to
bridge the gap between `chainHead/storage` and `archive/storage`.
Query pagination is supported by `paginationStartKey`, similar to the
old APIs.
Similarly to the `chainHead/storage`, the `archive/storage` method
accepts a maximum number of queried items.

The design builds upon:
paritytech/json-rpc-interface-spec#94.
Closes #1512.

cc @paritytech/subxt-team

---------

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
bgallois pushed a commit to duniter/duniter-polkadot-sdk that referenced this issue Mar 25, 2024
This PR implements the `archive_unstable_storage` method that offers
support for:
- fetching values
- fetching hashes
- iterating over keys and values
- iterating over keys and hashes
- fetching merkle values from the trie-db

A common component dedicated to RPC-V2 storage queries is created to
bridge the gap between `chainHead/storage` and `archive/storage`.
Query pagination is supported by `paginationStartKey`, similar to the
old APIs.
Similarly to the `chainHead/storage`, the `archive/storage` method
accepts a maximum number of queried items.

The design builds upon:
paritytech/json-rpc-interface-spec#94.
Closes paritytech#1512.

cc @paritytech/subxt-team

---------

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I5-enhancement An additional feature request.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant