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

Refactor DB Backends #1013

Open
moul opened this issue Aug 1, 2023 · 0 comments
Open

Refactor DB Backends #1013

moul opened this issue Aug 1, 2023 · 0 comments
Labels
🐞 bug Something isn't working 🌟 improvement performance improvements, refactors ...

Comments

@moul
Copy link
Member

moul commented Aug 1, 2023

Regarding the current and past discussions: #1012, #1008, #130, #305, #131, #196, #197, #1009.

We've noticed some unused and potentially broken backend code in our project. Despite considering PebbleDB as a better replacement, we are still using GoLevelDB.

When we attempt to integrate Gno with other platforms like WASM or build it with new constraints, we encounter issues related to Cgo or advanced OS features used by those dependencies.

We have an excellent tm2/pkg/db library that abstracts the database concept and enables easy configuration. However, instead of providing configurable flags, we've hardcoded the backend selection in multiple places.

Here's my suggested plan:

  1. Ensure that our current target environments use sensible defaults (e.g., GoLevelDB everywhere or different backends for computers and WASM) - already in progress in feat: make gnovm wasm-friendly #1012.
  2. Add any missing drivers, including Pebble, and conduct thorough benchmarks and stability checks.
  3. Switch the default to the best new drivers for a trial period.
  4. Clean up all other unused backends.

This plan aims to improve database backend handling and enhance overall project stability and performance.

@ajnavarro ajnavarro added 🐞 bug Something isn't working 🌟 improvement performance improvements, refactors ... labels Aug 7, 2023
@moul moul moved this to 🔵 Not Needed for Launch in 🚀 The Launch [DEPRECATED] Sep 5, 2023
@moul moul added this to the 💡Someday/Maybe milestone Sep 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐞 bug Something isn't working 🌟 improvement performance improvements, refactors ...
Projects
Status: 🔵 Not Needed for Launch
Development

No branches or pull requests

2 participants