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 local and server split #49

Merged
merged 3 commits into from
Apr 26, 2021
Merged

Refactor local and server split #49

merged 3 commits into from
Apr 26, 2021

Conversation

ecton
Copy link
Member

@ecton ecton commented Apr 26, 2021

Initially, I thought it would be a good idea to mimic CouchDB in the design of having unique database instances be separate Sled instances. Through some conversations and thoughts, I decided to refactor how local and server are defined. Before this change, local was only for a single database. After this change, local is where the multi-db abstraction lives, and the server crate's purpose is to expose local over the network.

This keeps each crate's purpose as focused as possible and allowed me to remove many "internal" APIs because the boundaries are better defined -- that's a testament to this being the right refactor. Additionally, many of my original concerns about "number of open files" and ways to optimize sled are waved away, because there is only one sled instance now, and databases are just groups of trees within sled.

  • Re-enable cli in local, test backups
  • Fix server
  • Update docs
  • Update book

Local unit tests should succeed, but everything else is failing right
now.
All unit tests are passing now.
@ecton ecton marked this pull request as ready for review April 26, 2021 17:26
@ecton ecton merged commit 6f16a4c into main Apr 26, 2021
@ecton ecton deleted the local-multidb-refactor branch April 26, 2021 17:34
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.

None yet

1 participant