fix: fallback to client hash when BlockHash is missing - #215
Merged
Merged
Conversation
1.70.0Bug Fixes
Features
|
JayWhite2357
force-pushed
the
fix/hash-fallback
branch
from
August 5, 2026 14:55
8ee5efa to
95794da
Compare
tlovell-sxt
approved these changes
Aug 5, 2026
JayWhite2357
added a commit
that referenced
this pull request
Sep 28, 2026
# Rationale for this change The prover-db-indexer implementation in this repo has flaws that are not solvable because of the limitations of polkadot. Instead, we are switching to a non-OCW based solution. # What changes are included in this PR? This PR rolls back to commit 6e668a9 in the first commit, which rolls back to right before the first PR on the prover-db-indexer, and then cherry picks some of the PRs. Lastly, a commit is added to bump both the spec version and the node version to force a new version and avoid any issues with versioning. The best way to view this PR is to verify that the first commit does, in fact, rollback, and then looking at the following commits, which are very small. The net effect of the following commits is just version bumps, documentation, and CI, so this is nearly a pure rollback. The full list of PRs since 6e668a9 can be viewed with ``` $ git log 6e668a9..main --oneline --no-decorate --grep='(#[0-9]\+)$' ``` 2443e99 fix: default prover-db indexer to disabled unless explicitly enabled (#216) 57ab735 fix: fallback to client hash when `BlockHash` is missing (#215) d2eff84 chore: drop old `prover_db_indexer` code (#214) 70bc510 feat: use client for prover-db-indexing (#212) 1a3fba7 refactor: use idiomatic `snafu` in `prover_db_indexer` (#213) 0b683b6 refactor: switch `db_events` to concrete `native_api::Api` instance (#211) 21a49d5 feat: use generic key value config for `prover_db_indexing` (#209) 4b79e05 fix: use finalized block in prover-db-indexer (#210) 5fd2f26 feat: add generic config key-value store for offchain workers (#208) 96180b4 feat: add `db_events_at` helper that queries the client for `DBEvent`s (#207) 8026671 feat: add client externality to offchain worker (#206) 2481b17 refactor: tidy `prover_db_indexer` (#204) 2c2a8ca fix: make on chain indexer keys saturate rather than default to `0` (#203) 8634d18 refactor: address clippy allowances in prover_db_indexer (#200) CHERRY-PICKED: 7e50538 Document Snapshot Downloads (#199) CHERRY-PICKED: e5ab065 build: add perl as a nix buildInput (#197) CHERRY-PICKED: 29a860c build: bump node version to 1.4.0 (#196) f8b94d4 chore: measure weights for pallet-tables and pallet-indexing (#194) CHERRY-PICKED: 2438ebd chore(runtime): bump spec_version 249 -> 250 (#195) ab1cf7f feat: add configurable include set to gate captured tables (#193) ec1d24c feat: Add OCW consumer that drains and forwards events (#192) 617f4ef feat: add http client for prover db indexer (#190) dbd13dd feat: prover db indexer producer (#187) CHERRY-PICKED: 4fa4307 docs: Update Bootnode List (#189) 066b719 feat: configure prover_db_url from CLI and into local storage (#186) # Are these changes tested? NA
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rationale for this change
The runtime prunes the block number to block hash mappings. As a result, the
prover_db_indexercan fail to get the events needed. See theblock_hash_falls_back_to_client_once_frame_system_prunes_the_entrytest in this PR for an example.What changes are included in this PR?
client::hashis added to get the block hash from the client.block_hashhelper method is added and used that falls back to getting the block hash from the client instead of the state.Are these changes tested?
Yes