nolan

Crates.ionolan
lib.rsnolan
version0.1.1
sourcesrc
created_at2022-06-16 19:29:34.956074
updated_at2022-08-14 16:37:34.647712
descriptionCommitlog/WAL Implmentation and Powerful Abstractions
homepage
repositoryhttps://github.com/bdkiran/lucidmq
max_upload_size
id607638
size32,601
Burak (bdkiran)

documentation

README

Nolan

What is Nolan?

Nolan is the base library that wraps and handles commitlog/WAL logic into a simplified API. To those who are not familiar, this is an append only data structure that supports random reads via an offset. This library is created the underlying persistence unit behind the LucidMQ project. It is somewhat generic and can be used in other projects that need to utilize a commitlog/WAL.

To prevent commitlog curruption, only a few commitlog methods are exposed to be used as client code.

Basic Usage

pub fn main() {
    let commit_log = Commitlog::new("test_dir".to_string(), 1000, 10000);

    // Let's append data to our commitlog
    commit_log.append("hello please".as_bytes());

    //Lets lookup by offset the message we just appended
    commit_log.read(0);
}

Commit count: 120

cargo fmt