Skip to content

Add 'World state unavailable' as non-retryable for proof lower bound - #904

Open
easy2stake wants to merge 1 commit into
drpcorg:masterfrom
easy2stake:fix/linea-proof-lowerbound-world-state-unavailable
Open

easy2stake wants to merge 1 commit into
drpcorg:masterfrom
easy2stake:fix/linea-proof-lowerbound-world-state-unavailable

Conversation

@easy2stake

Copy link
Copy Markdown

Summary

  • Linea (linea-besu) returns World state unavailable from eth_getProof on pruned state, instead of one of the error strings already recognized in NO_PROOF_ERRORS.
  • Without it in the list, RecursiveLowerBound.retrySpec treats it as a transient error and retries indefinitely with backoff up to 3 minutes, spamming the "...please report it to dshackle devs" warning on every retry past 30 attempts, instead of settling the PROOF lower bound.
  • Same pattern as Mark 'state is not available' as non-retryable in proof lower bound detector #821 (state is not available for opBNB/BSC).

Test plan

Reproduced against a Linea mainnet upstream (rpc-svc-fsn1s3):

  • eth_getProof at an old/pruned block returns {"error":{"code":-32000,"message":"World state unavailable"}}
  • eth_getProof at a recent block returns a valid proof
  • Change is a single-line addition to an existing Set<String>, consistent with prior PRs adding upstream-specific non-retryable error strings (no behavioral change to retry logic itself)

🤖 Generated with Claude Code

Linea (linea-besu) returns this error from eth_getProof on pruned
state. Without it in NO_PROOF_ERRORS, RecursiveLowerBound retries
indefinitely and emits the "report it to dshackle devs" warning.

Reproduced on rpc-svc-fsn1s3 (linea mainnet):
- eth_getProof at an old/pruned block -> {"error":{"code":-32000,"message":"World state unavailable"}}
- eth_getProof at a recent block -> valid proof returned

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@yn-alex

yn-alex commented Sep 22, 2026

Copy link
Copy Markdown

Hi @a10zn8 , can you please check this out ? It is for the linea-besu client.

This branch has not been deployed

No deployments
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