DurableStorage

Trait DurableStorage 

Source
pub trait DurableStorage<S: Lattice> {
    // Required methods
    fn persist(&mut self, state: &DurableState<S>) -> Result<(), StorageError>;
    fn load(
        &self,
        replica_id: &str,
    ) -> Result<Option<DurableState<S>>, StorageError>;
    fn sync(&mut self) -> Result<(), StorageError>;
}
Expand description

Trait for durable storage backends

Implement this trait to persist DurableState across crashes.

Required Methods§

Source

fn persist(&mut self, state: &DurableState<S>) -> Result<(), StorageError>

Persist the durable state

Source

fn load( &self, replica_id: &str, ) -> Result<Option<DurableState<S>>, StorageError>

Load the durable state

Source

fn sync(&mut self) -> Result<(), StorageError>

Force sync to stable storage

Implementors§

Source§

impl<S: Lattice + Clone + Serialize + for<'de> Deserialize<'de>> DurableStorage<S> for MemoryStorage<S>