linera_views::backends::journaling

Trait DirectWritableKeyValueStore

Source
pub trait DirectWritableKeyValueStore: WithError {
    type Batch: SimplifiedBatch + Serialize + DeserializeOwned + Default;

    const MAX_BATCH_SIZE: usize;
    const MAX_BATCH_TOTAL_SIZE: usize;
    const MAX_VALUE_SIZE: usize;

    // Required method
    fn write_batch<'life0, 'async_trait>(
        &'life0 self,
        batch: Self::Batch,
    ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
}
Expand description

Low-level, asynchronous direct write key-value operations with simplified batch

Required Associated Constants§

Source

const MAX_BATCH_SIZE: usize

The maximal number of items in a batch.

Source

const MAX_BATCH_TOTAL_SIZE: usize

The maximal number of bytes of a batch.

Source

const MAX_VALUE_SIZE: usize

The maximal size of values that can be stored.

Required Associated Types§

Required Methods§

Source

fn write_batch<'life0, 'async_trait>( &'life0 self, batch: Self::Batch, ) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Writes the batch to the database.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§