wickdb
This project is under rapidly development
You can find a simple worked example in examples
.
Plan & Progress
The basic shape of LevelDB
- Fundamental components
- Arena
- Skiplist
- Cache
- Record
- Batch
- Block
- Table
- Version
- VersionEdit
- VersionSet
- Storage
- DB
- Compaction implementation
- Scheduling
[ongoing] Test cases & Benches
- Adding more test cases. The progress is tracked by this issue.
- Adding benchmarks. The progress is tracked by this issue.
Developing
wickdb
is built using the latest version of stable
Rust, using the 2018 edition.
In order to have your PR merged running the following must finish without error otherwise the CI will fail:
cargo test --all && \
cargo clippy && \
cargo fmt --all -- --check
You may optionally want to install cargo-watch
to allow for automated rebuilding while editing:
cargo watch -s "cargo check --tests"
There're so many TODO
s in current implementation and you can pick either of them to do something.
This crate is still at early stage so any PRs or issues are welcomed!.