Skip to content
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

Use upstream statedb #669

Merged
merged 41 commits into from
Nov 29, 2024
Merged

Use upstream statedb #669

merged 41 commits into from
Nov 29, 2024

Conversation

darioush
Copy link
Collaborator

@darioush darioush commented Oct 7, 2024

Uses upstream statedb

  • Uses upstream statedb
  • Passes snapshot as SnapshotTree interface
  • Uses libevm trie prefetcher construct

Import Path Updates:

  • Updated import paths from github.com/ava-labs/coreth/trie and github.com/ava-labs/coreth/triedb to github.com/ava-labs/libevm/trie and github.com/ava-labs/libevm/triedb in several files, deleting those packages.

State Management:

  • Moved GetLogData to the StateDB wrapper struct in core/extstate/statedb.go, in preparation for using upstream StateDB.
  • Modified the commitWithSnap function to handle state commits with snapshot updates in core/blockchain.go.
  • Updated writeBlockAndSetHead and writeBlockWithState functions to include parentRoot as a parameter in core/blockchain.go. [1] [2]
  • Removed unnecessary multicoin code from core/genesis.go. [1]

Error Handling Improvements (already added in master):

  • Added error handling for transaction signing and sending in the TestWaitDeployedCornerCases function in accounts/abi/bind/util_test.go.

@darioush darioush changed the title format: as subnet-evm [wip] changes to use upstream statedb Oct 8, 2024
Base automatically changed from use-libevm to libevm November 6, 2024 16:39
@darioush darioush changed the title [wip] changes to use upstream statedb Use upstream statedb Nov 26, 2024
@darioush darioush marked this pull request as ready for review November 26, 2024 18:37
@darioush darioush requested review from ceyonur and a team as code owners November 26, 2024 18:37
core/chain_makers.go Show resolved Hide resolved
core/genesis.go Show resolved Hide resolved
core/state/dump.go Outdated Show resolved Hide resolved
core/state/snapshot/conversion.go Show resolved Hide resolved
core/state/snapshot/snapshot.go Outdated Show resolved Hide resolved
core/state/statedb_test.go Outdated Show resolved Hide resolved
core/state/statedb_test.go Outdated Show resolved Hide resolved
go.mod Show resolved Hide resolved
scripts/eth-allowed-packages.txt Outdated Show resolved Hide resolved
triedb/hashdb/database.go Show resolved Hide resolved
Copy link
Collaborator

@ceyonur ceyonur left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall lgtm, I think we can get rid of few more multicoinbalance stuff.

core/state/dump.go Outdated Show resolved Hide resolved
core/types/state_account.go Show resolved Hide resolved
core/genesis.go Show resolved Hide resolved
@darioush darioush merged commit 35736dd into libevm Nov 29, 2024
6 checks passed
@darioush darioush deleted the use-libevm-statedb branch November 29, 2024 18:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants