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

Missing Merkle Leaves Causing Proof Retrieval Failure with espresso-dev-node #2280

Open
ImJeremyHe opened this issue Nov 13, 2024 · 0 comments

Comments

@ImJeremyHe
Copy link
Member

We’ve encountered a potential bug where espresso-dev-node appears to miss certain leaves, resulting in the failure to retrieve Merkle proofs.

Steps to Reproduce

To replicate the issue, run the end-to-end integration test on this branch using the following command:

go test -v -count=1 -timeout 25m -run ^TestEspressoE2E$ github.com/offchainlabs/nitro/system_tests

This test initiates an L1 instance and then starts the Espresso dev node based on that L1.

Observed Behavior

During the test, the following warning appears in the logs:

WARN [11-13|10:40:56.740] error posting batch                      err="error adding hotshot block merkle proof to justification: error fetching the block merkle proof for validated height 57 and leaf height 42. Request failed with error request failed with status 404 and body {\"MerklizedState\":{\"source\":{\"Query\":{\"source\":\"NotFound\"}}}}"

This indicates that while the test can retrieve the Merkle root height (57 for height 42) from the light client contract, it receives a 404 error when attempting to fetch the corresponding Merkle proof.

It appears that the dev node may be failing to update the state in the database correctly.

Relevant API Responses

  • http://localhost:41000/v0/block-state/block-height always returns 4
  • http://localhost:41000/v0/availability/leaf/5/5 returns an empty list
  • http://localhost:41000/v0/availability/header/5 returns a 404 error

Temporary Solution

As a workaround, we added a 10-second wait for the L1 in this commit. However, the precise relationship between L1 and the dev node remains unclear.

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

No branches or pull requests

1 participant