[WIP] feat: add file-based block loading for benchmarks (#19162) #19259
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.
Draft PR
Resolves #19162 when complete
Changes:
Added additional --from-file argument to run reth-bench from a file input
Included new modules Block Storage and Generate File
Block Storage
ConsensusBlockto differentiate between optimism and eth blocks. Happy to hear feedback on this if there is a better way.Generate File
Refactored
new_payload_fcuandnew_payload_onlyto run the benchmark against the file type inputsRefactored
valid_payloadto extract the payload from explicit block types (op + eth) which we have to specify when loading blocks from a file.I still have work to do to write unit tests and run it against my node (waiting for it to sync) but I thought it was a good moment to open a draft pr to showcase my design and gather some early feedback as I iterate.