Skip to content

fix: fallback to client hash when BlockHash is missing - #215

Merged
JayWhite2357 merged 2 commits into
mainfrom
fix/hash-fallback
Aug 6, 2026
Merged

JayWhite2357 merged 2 commits into
mainfrom
fix/hash-fallback

Conversation

@JayWhite2357

@JayWhite2357 JayWhite2357 commented Aug 5, 2026 •

Copy link
Copy Markdown
Contributor

Rationale for this change

The runtime prunes the block number to block hash mappings. As a result, the prover_db_indexer can fail to get the events needed. See the block_hash_falls_back_to_client_once_frame_system_prunes_the_entry test in this PR for an example.

What changes are included in this PR?

  • client::hash is added to get the block hash from the client.
  • A block_hash helper 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

@JayWhite2357
JayWhite2357 requested review from a team as code owners August 5, 2026 14:39
@github-actions

github-actions Bot commented Aug 5, 2026 •

Copy link
Copy Markdown

1.70.0

Bug Fixes

  • fallback to client hash when is missing (95794da
  • make on chain indexer keys saturate rather than default to (5f794de
  • use finalized block in prover-db-indexer (50438ab

Features

  • add helper that queries the client for s. (4fc3952
  • add client native interface and extenality (d9c6c4d
  • add generic config key-value store for offchain workers (117b845
  • adds (a5b581d
  • Document Snapshot Download Process (4c2608b
  • drop from prover_db_indexer (b3381c5
  • register client externality to offchain worker (338c213
  • use client for (6679c06
  • use generic key value config for prover_db_indexing instead of storage/CLI based config (faff564

Comment thread pallets/prover_db_indexer/src/mock.rs
@JayWhite2357
JayWhite2357 merged commit 57ab735 into main Aug 6, 2026
9 checks passed
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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants