-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Description
Summary
dispatch_storage_proof is effectively unused for state-root multiproof work in the execution tree. Every call path funnels through dispatch_multiproof and creates PendingMultiproofTask::Regular, even for storage-only proof requests. This causes redundant account multiproofs when the account proof is already available.
Solution: We should be able to utilize storage-only proofs to not do redundant account multiproofs, when we already had the account proof fetched before.
Currently, dispatch_storage_proof is only used in crates/trie/parallel/src/proof.rs and provides no benefit for the state-root computation path in the engine tree.
In the engine tree's multiproof processor, we always invoke:
MultiproofInput { ... }.into()during prefetchMultiproofInput { ... }.into()during state updates
Both convert directly into PendingMultiproofTask::Regular.
StorageMultiproofInput and PendingMultiproofTask::Storage are never constructed in the execution flow.
References
Metadata
Metadata
Assignees
Labels
Type
Projects
Status