Skip to content

index-builder: include block number, ID and payload type in unmarshalling errors#149

Open
YaroShkvorets wants to merge 3 commits into
streamingfast:developfrom
pinax-network:improve/index-builder-unmarshal-error
Open

index-builder: include block number, ID and payload type in unmarshalling errors#149
YaroShkvorets wants to merge 3 commits into
streamingfast:developfrom
pinax-network:improve/index-builder-unmarshal-error

Conversation

@YaroShkvorets

Copy link
Copy Markdown
Contributor

Problem

When the index-builder app hits a block whose payload fails to unmarshal, it dies with:

Fatal error in app index-builder:
proto: cannot parse invalid wire-format data

There is no indication of which block or which merged-blocks bundle is at fault, forcing the operator to fireeth tools check merged-blocks -f the whole store to locate it. We hit this in production on a MegaETH deployment (single corrupted block deep inside an otherwise-healthy bundle).

Change

Wrap the payload unmarshalling error in the index-builder block handler with the block number, block ID and payload type URL:

unmarshalling block #6258830 (d82cd86e…) payload (type.googleapis.com/sf.ethereum.type.v2.Block): proto: cannot parse invalid wire-format data

The block number directly identifies the offending bundle file.

🤖 Generated with Claude Code

@maoueh

maoueh commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

If rebased, checks should pass now for external contributions

…ling errors

Previously a corrupt block payload surfaced as a bare
'proto: cannot parse invalid wire-format data' with no indication of
which block or merged-blocks bundle was at fault, forcing operators to
scan the whole store to find it.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@YaroShkvorets YaroShkvorets force-pushed the improve/index-builder-unmarshal-error branch from cad9390 to 0807ce2 Compare June 17, 2026 00:27
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.

3 participants