ethereum / ethereum/state-actor
Import or create databases via clients' codebase
- Dominant language
- Go
- Stars
- 12
- Forks
- 11
- PR merge metrics
- No merged PRs in 30d
Description
We currently copy code over (or translate code to Go) when instantiating databases. This is obviously very fragile. If a client changes one config, we will still run on the "old" database scheme, which is not what we want.
I think we should add the clients as submodule and then directly read database code or setup the database via that code, such that a state-actor build is pinned also to a specific client version. If we update submodules and regenerate state, then the databases are also updated.
These PRs are all changes to the db, but they all copy code, which I think should be temporary and we should fix this ASAP:
- #121
- #123
- #124
- #125
Contributor guide
Research direction
Start by reviewing PRs #121, #123, #124, and #125 to understand the copied database code and how state-actor builds currently instantiate databases. Then identify the client code and submodule setup needed to pin a client version; done means regeneration uses that pinned client database definition instead of copied or translated code.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- databases
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100