0
0
mirror of https://github.com/tursodatabase/libsql.git synced 2025-06-30 03:38:43 +00:00

3 Commits

Author SHA1 Message Date
473bed6497 Add experimental Redis and Foundation DB backends ()
* Add Redis and Foundation DB backends

* Put foundation db behind a `foundation-db` feature flag
2024-06-06 06:54:11 +00:00
3460edce12 Add storage server RPC client ()
* Add storage server RPC client

* Address review comments

- Use `#[tracing::instrument]` wherever appropriate
- Remove `Mutex` for `client` and `clone` it wherever required
- Avoid reading env variable inside the lib, rather take a config object
- Make the private methods of `DurableWal` async
- Don't try to create a runtime, instead assume it always exists. Let the caller create it
- Update proto:
	- remove `max_frame_no` from `InsertFramesRequest`
	- make `page_no` to `u32` in the proto
- Update storage server to have `page_no` as `u32`
2024-06-04 11:26:50 +00:00
facb8942e4 Add storage server ()
* Add build and version files

* Add `FrameStore` trait

This trait provides the methods which can be implemented by different
storage backends like Redis, Foundation DB etc.

* Add a gRPC server which implements Storage Server proto

* Add storage server runner with pluggable storage backends

* Add an InMemory FrameStore

* Address review comments

- Remove unnecessary Arc/Mutex in the Service struct
- Chnage all `&self mut` to `&self` in the `FrameStore` trait, handle
  locking internally

* Set cargo publish to false
2024-06-03 04:32:44 +00:00