backup-state and restore-state subcommands to use bonsai#9812
Closed
macfarla wants to merge 2 commits intobesu-eth:mainfrom
Closed
backup-state and restore-state subcommands to use bonsai#9812macfarla wants to merge 2 commits intobesu-eth:mainfrom
macfarla wants to merge 2 commits intobesu-eth:mainfrom
Conversation
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Contributor
Author
|
Re the failing AcceptanceTest: the test data archive is a Forest-format database, but our code now requires Bonsai. The checkArgument(worldStateArchive instanceof BonsaiWorldStateProvider, ...) fails when the node starts with Forest data.
The chain data (blocks, headers, receipts) is format-agnostic, but the world state in the archive is stored as Forest trie nodes, which a Bonsai-configured node can't read. Options:
|
Contributor
Author
|
closing this since the fact this is still on forest is clear indication it's not being used. will remove in a new PR |
10 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
PR description
Both BackupState.java and RestoreState.java explicitly cast the world state archive to ForestWorldStateArchive and use Forest-specific APIs (trie traversal via StoredMerklePatriciaTrie.visitLeafs, PersistVisitor/RestoreVisitor for trie reconstruction). Since
Forest is deprecated and Bonsai is the default, thus these commands are effectively broken for all default-configuration nodes.
Proposed Fix
Replace Forest world state access with Bonsai flat DB APIs:
Fixed Issue(s)
fixes #9811
Thanks for sending a pull request! Have you done the following?
doc-change-requiredlabel to this PR if updates are required.Locally, you can run these tests to catch failures early:
./gradlew spotlessApply./gradlew build./gradlew acceptanceTest./gradlew integrationTest./gradlew ethereum:referenceTests:referenceTests