Skip to main content

limbo_core/mvcc/persistent_storage/
mod.rs

1use std::fmt::Debug;
2
3use crate::mvcc::database::{LogRecord, Result};
4use crate::mvcc::errors::DatabaseError;
5
6#[derive(Debug)]
7pub enum Storage {
8    Noop,
9}
10
11impl Storage {
12    pub fn new_noop() -> Self {
13        Self::Noop
14    }
15}
16
17impl Storage {
18    pub fn log_tx(&self, _m: LogRecord) -> Result<()> {
19        match self {
20            Self::Noop => (),
21        }
22        Ok(())
23    }
24
25    pub fn read_tx_log(&self) -> Result<Vec<LogRecord>> {
26        match self {
27            Self::Noop => Err(DatabaseError::Io(
28                "cannot read from Noop storage".to_string(),
29            )),
30        }
31    }
32}