pub struct AcidStorage { /* private fields */ }Implementations§
Source§impl AcidStorage
impl AcidStorage
Sourcepub fn new(
root_dir: impl Into<PathBuf>,
shard_count: usize,
max_total_bytes: u64,
max_stream_bytes: u64,
) -> Result<Self>
pub fn new( root_dir: impl Into<PathBuf>, shard_count: usize, max_total_bytes: u64, max_stream_bytes: u64, ) -> Result<Self>
§Errors
Returns Error::Storage if storage layout validation fails, shard
databases cannot be opened, or on-disk recovery cannot complete.
pub fn total_bytes(&self) -> u64
Trait Implementations§
Source§impl Storage for AcidStorage
impl Storage for AcidStorage
Source§fn create_stream(
&self,
name: &str,
config: StreamConfig,
) -> Result<CreateStreamResult>
fn create_stream( &self, name: &str, config: StreamConfig, ) -> Result<CreateStreamResult>
Create a new stream Read more
Source§fn append(&self, name: &str, data: Bytes, content_type: &str) -> Result<Offset>
fn append(&self, name: &str, data: Bytes, content_type: &str) -> Result<Offset>
Append data to a stream Read more
Source§fn batch_append(
&self,
name: &str,
messages: Vec<Bytes>,
content_type: &str,
seq: Option<&str>,
) -> Result<Offset>
fn batch_append( &self, name: &str, messages: Vec<Bytes>, content_type: &str, seq: Option<&str>, ) -> Result<Offset>
Append multiple messages atomically Read more
Source§fn read(&self, name: &str, from_offset: &Offset) -> Result<ReadResult>
fn read(&self, name: &str, from_offset: &Offset) -> Result<ReadResult>
Read messages from a stream starting at offset Read more
Source§fn append_with_producer(
&self,
name: &str,
messages: Vec<Bytes>,
content_type: &str,
producer: &ProducerHeaders,
should_close: bool,
seq: Option<&str>,
) -> Result<ProducerAppendResult>
fn append_with_producer( &self, name: &str, messages: Vec<Bytes>, content_type: &str, producer: &ProducerHeaders, should_close: bool, seq: Option<&str>, ) -> Result<ProducerAppendResult>
Append messages with producer sequencing (atomic validation + append) Read more
Source§fn create_stream_with_data(
&self,
name: &str,
config: StreamConfig,
messages: Vec<Bytes>,
should_close: bool,
) -> Result<CreateWithDataResult>
fn create_stream_with_data( &self, name: &str, config: StreamConfig, messages: Vec<Bytes>, should_close: bool, ) -> Result<CreateWithDataResult>
Atomically create a stream with optional initial data and close. Read more
Auto Trait Implementations§
impl !Freeze for AcidStorage
impl !RefUnwindSafe for AcidStorage
impl Send for AcidStorage
impl Sync for AcidStorage
impl Unpin for AcidStorage
impl UnsafeUnpin for AcidStorage
impl !UnwindSafe for AcidStorage
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more