tracking: trie debugging tool #10405
Labels
A-trie
Related to Merkle Patricia Trie implementation
C-enhancement
New feature or request
C-tracking-issue
An issue that collects information about a broad development initiative
Describe the feature
Create a tool for debugging state root errors. For two reth nodes 1) stable instance with valid root output and 2) unhealthy instance with invalid root output, create a tool that gathers enough information from stable node to triage the bug in unstable one.
The tool is supposed to retrieve the execution witness and pre-images for the
target
block where root mismatch has happened. Then it should diff the witness information from an unstable node against a stable one:If they are different, the tool should compare the execution witnesses for the parent block:
a) the tool should attempt the same process for the parent until it finds the highest ancestor with mismatched witness
b) for the highest ancestor, the tool should unroll the witness into trie proofs and print them to stdout, leaf nodes should include key preimage and decoded values
If they are the same, the tool should take the execution and trie outputs of the block and compare them
The tool should be first implemented as CLI option for the new engine that would take in an RPC URL of a stable node.
Tasks
Additional context
No response
The text was updated successfully, but these errors were encountered: