Collect stats related to storage changes #7
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This adds a new tracer capability which computes the net storage diffs in each block, by leveraging the
debug_traceBlockByHash
RPC endpoint. This feature is enabled by settingREPLAYOR_COMPUTE_STORAGE_DIFFS
totrue
In order to make this compatible with geth's pathdb or other node implementations with shallow history support, this also updates the order of operations such that each block is now analyzed immediately after creation. Performing this trace async could negatively impact block execution time or result in the stats tracer falling too far behind in the case of history expiry. This is especially true for geth, which takes on the order of 5-10 seconds to trace a typical Base block.
Because tracing is now performed in lock-step with block production, this change also removes the
chann
(unbounded channel) dependency.