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

ADR-040 Implementation: New DB interface #10094

Closed
4 of 8 tasks
i-norden opened this issue Sep 7, 2021 · 2 comments
Closed
4 of 8 tasks

ADR-040 Implementation: New DB interface #10094

i-norden opened this issue Sep 7, 2021 · 2 comments

Comments

@i-norden
Copy link
Contributor

i-norden commented Sep 7, 2021

Child of #9816

Currently the SDK uses tm-db as its low-level database interface. Here we create a new interface to replace tm-db and support ADR-040. This interface will be packaged as part of the SDK. This interface will only support databases which support efficient DB Snapshot. At the time of writing we are going to support RocksDB and BadgerDB.

Our new interface will

  • use batched transactions
  • support versioning
  • support direct querying and abci.Querying
  • needs to support the MapStore interface underpinning the SMT
  • be generic enough to work on top of our two selected databases: RocksDB and BadgerDB

After creating the interface we need to integrate it into the SDK, replacing the dependency on tm-db.

For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@i-norden i-norden mentioned this issue Sep 20, 2021
38 tasks
@roysc
Copy link
Contributor

roysc commented Oct 5, 2021

An additional PR will patch in support for reverting (rolling back) the DB state: #10308

@roysc
Copy link
Contributor

roysc commented Oct 19, 2021

All PRs have been merged, this is complete.

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

No branches or pull requests

3 participants