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

Inconsistent backends #34

Open
loganmhb opened this issue Oct 4, 2018 · 0 comments
Open

Inconsistent backends #34

loganmhb opened this issue Oct 4, 2018 · 0 comments

Comments

@loganmhb
Copy link
Owner

loganmhb commented Oct 4, 2018

The way backends currently work doesn't make a lot of sense, and the in-memory database doesn't bootstrap properly.

I think it should probably work something like this. Instead of an in-memory and a sqlite backend, there should be one sqlite backend. Sqlite already has an in-memory option, so this distinction isn't necessary. What is important -- and isn't clear or obvious right now -- is where the transactor runs. There should be two options for this:
a. The transactor runs as a separate process, maintains a sqlite db on-disk, and serves reads. (This can be called the tx backend or something.)
b. The client runs a transactor in-process, limiting the use of the db to that process even if it's an on-disk database. This would could be called the file backend, since sqlite is an implementation detail -- what's important is that data is stored in a file and can only be used by a single process at a time.

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

1 participant