-
Notifications
You must be signed in to change notification settings - Fork 454
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
[config change] Improve BlocksReExecutor implementation #2714
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good, but we should configure cleans cache + we potentially can simplify / clean up arbitrum.AdvanceStateUpToBlock
and follow the release func pattern
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Most comments are small / optional.
The important comment is about solving a possible race condition - hold a lock from Commit to Reference"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
860f54a
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no changes since prev approval, only merge
This PR changes the implementation of blocks re-execution mainly to use a separate stateDB during each block's re-execution and to verify that the resulting state successfully commits.
Config option
--blocks-reexecutor.blocks-per-thread
is renamed to--blocks-reexecutor.min-blocks-per-thread
.A new config option
--blocks-reexecutor.trie-clean-limit
(memory allowance in MB to use for caching trie nodes in memory) is added.Pulls geth PR- OffchainLabs/go-ethereum#364
Resolves NIT-2810