slabstore: add debug messages

This commit is contained in:
ghassmo
2021-10-09 08:53:10 +03:00
parent fa7d049547
commit 4e76f008f8

View File

@@ -1,11 +1,14 @@
use std::sync::Arc;
use log::debug;
use crate::serial::{deserialize, serialize};
use crate::Result;
use super::rocks::{columns, IteratorMode, RocksColumn};
use super::slab::Slab;
pub struct SlabStore {
rocks: RocksColumn<columns::Slabs>,
}
@@ -16,11 +19,13 @@ impl SlabStore {
}
pub fn get(&self, key: Vec<u8>) -> Result<Option<Vec<u8>>> {
debug!(target: "SLABSTORE", "get value");
let value = self.rocks.get(key)?;
Ok(value)
}
pub fn put(&self, slab: Slab) -> Result<Option<u64>> {
debug!(target: "SLABSTORE", "Put slab");
let last_index = self.get_last_index()?;
let key = last_index + 1;
@@ -37,6 +42,7 @@ impl SlabStore {
}
pub fn get_last_index(&self) -> Result<u64> {
debug!(target: "SLABSTORE", "Get last index");
let last_index = self.rocks.iterator(IteratorMode::End)?.next();
match last_index {
Some((index, _)) => Ok(deserialize(&index)?),
@@ -45,6 +51,7 @@ impl SlabStore {
}
pub fn get_last_index_as_bytes(&self) -> Result<Vec<u8>> {
debug!(target: "SLABSTORE", "Get last index as bytes");
let last_index = self.rocks.iterator(IteratorMode::End)?.next();
match last_index {
Some((index, _)) => Ok(index.to_vec()),