pub struct InMemoryGroupEngine { /* private fields */ }Implementations§
Source§impl InMemoryGroupEngine
impl InMemoryGroupEngine
pub fn with_cold_store(cold_store: ColdStoreHandle) -> Self
pub fn cold_store(&self) -> Option<ColdStoreHandle>
pub fn apply_committed_write( &mut self, command: GroupWriteCommand, placement: ShardPlacement, ) -> Result<GroupWriteResponse, GroupEngineError>
pub fn access_requires_write( &self, stream_id: &BucketStreamId, now_ms: u64, renew_ttl: bool, ) -> Result<bool, GroupEngineError>
pub fn apply_committed_write_batch( &mut self, commands: Vec<GroupWriteCommand>, placement: ShardPlacement, ) -> Vec<Result<GroupWriteResponse, GroupEngineError>>
pub fn read_stream_plan( &mut self, request: &ReadStreamRequest, placement: ShardPlacement, ) -> Result<StreamReadPlan, GroupEngineError>
pub fn read_stream_plan_after_access( &self, request: &ReadStreamRequest, ) -> Result<StreamReadPlan, GroupEngineError>
pub async fn read_payload_from_plan( cold_store: Option<&ColdStoreHandle>, stream_id: &BucketStreamId, plan: &StreamReadPlan, ) -> Result<Vec<u8>, GroupEngineError>
Trait Implementations§
Source§impl Clone for InMemoryGroupEngine
impl Clone for InMemoryGroupEngine
Source§fn clone(&self) -> InMemoryGroupEngine
fn clone(&self) -> InMemoryGroupEngine
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for InMemoryGroupEngine
impl Debug for InMemoryGroupEngine
Source§impl Default for InMemoryGroupEngine
impl Default for InMemoryGroupEngine
Source§fn default() -> InMemoryGroupEngine
fn default() -> InMemoryGroupEngine
Returns the “default value” for a type. Read more
Source§impl GroupEngine for InMemoryGroupEngine
impl GroupEngine for InMemoryGroupEngine
fn create_stream<'a>( &'a mut self, request: CreateStreamRequest, placement: ShardPlacement, ) -> GroupCreateStreamFuture<'a>
fn create_stream_with_cold_admission<'a>( &'a mut self, request: CreateStreamRequest, placement: ShardPlacement, admission: ColdWriteAdmission, ) -> GroupCreateStreamFuture<'a>
fn create_stream_external<'a>( &'a mut self, request: CreateStreamExternalRequest, placement: ShardPlacement, ) -> GroupCreateStreamFuture<'a>
fn read_stream<'a>( &'a mut self, request: ReadStreamRequest, placement: ShardPlacement, ) -> GroupReadStreamFuture<'a>
fn read_stream_parts<'a>( &'a mut self, request: ReadStreamRequest, placement: ShardPlacement, ) -> GroupReadStreamPartsFuture<'a>
fn publish_snapshot<'a>( &'a mut self, request: PublishSnapshotRequest, placement: ShardPlacement, ) -> GroupPublishSnapshotFuture<'a>
fn read_snapshot<'a>( &'a mut self, request: ReadSnapshotRequest, placement: ShardPlacement, ) -> GroupReadSnapshotFuture<'a>
fn delete_snapshot<'a>( &'a mut self, request: DeleteSnapshotRequest, placement: ShardPlacement, ) -> GroupDeleteSnapshotFuture<'a>
fn bootstrap_stream<'a>( &'a mut self, request: BootstrapStreamRequest, placement: ShardPlacement, ) -> GroupBootstrapStreamFuture<'a>
fn touch_stream_access<'a>( &'a mut self, stream_id: BucketStreamId, now_ms: u64, renew_ttl: bool, placement: ShardPlacement, ) -> GroupTouchStreamAccessFuture<'a>
fn add_fork_ref<'a>( &'a mut self, stream_id: BucketStreamId, now_ms: u64, placement: ShardPlacement, ) -> GroupForkRefFuture<'a>
fn release_fork_ref<'a>( &'a mut self, stream_id: BucketStreamId, placement: ShardPlacement, ) -> GroupForkRefFuture<'a>
fn head_stream<'a>( &'a mut self, request: HeadStreamRequest, placement: ShardPlacement, ) -> GroupHeadStreamFuture<'a>
fn close_stream<'a>( &'a mut self, request: CloseStreamRequest, placement: ShardPlacement, ) -> GroupCloseStreamFuture<'a>
fn delete_stream<'a>( &'a mut self, request: DeleteStreamRequest, placement: ShardPlacement, ) -> GroupDeleteStreamFuture<'a>
fn append<'a>( &'a mut self, request: AppendRequest, placement: ShardPlacement, ) -> GroupAppendFuture<'a>
fn append_with_cold_admission<'a>( &'a mut self, request: AppendRequest, placement: ShardPlacement, admission: ColdWriteAdmission, ) -> GroupAppendFuture<'a>
fn append_external<'a>( &'a mut self, request: AppendExternalRequest, placement: ShardPlacement, ) -> GroupAppendFuture<'a>
fn append_batch<'a>( &'a mut self, request: AppendBatchRequest, placement: ShardPlacement, ) -> GroupAppendBatchFuture<'a>
fn append_batch_with_cold_admission<'a>( &'a mut self, request: AppendBatchRequest, placement: ShardPlacement, admission: ColdWriteAdmission, ) -> GroupAppendBatchFuture<'a>
fn flush_cold<'a>( &'a mut self, request: FlushColdRequest, placement: ShardPlacement, ) -> GroupFlushColdFuture<'a>
fn plan_cold_flush<'a>( &'a mut self, request: PlanColdFlushRequest, _placement: ShardPlacement, ) -> GroupPlanColdFlushFuture<'a>
fn plan_next_cold_flush<'a>( &'a mut self, request: PlanGroupColdFlushRequest, _placement: ShardPlacement, ) -> GroupPlanNextColdFlushFuture<'a>
fn plan_next_cold_flush_batch<'a>( &'a mut self, request: PlanGroupColdFlushRequest, _placement: ShardPlacement, max_candidates: usize, ) -> GroupPlanNextColdFlushBatchFuture<'a>
fn cold_hot_backlog<'a>( &'a mut self, stream_id: BucketStreamId, _placement: ShardPlacement, ) -> GroupColdHotBacklogFuture<'a>
fn snapshot<'a>( &'a mut self, placement: ShardPlacement, ) -> GroupSnapshotFuture<'a>
fn install_snapshot<'a>( &'a mut self, snapshot: GroupSnapshot, ) -> GroupInstallSnapshotFuture<'a>
fn accepts_local_writes(&self) -> bool
fn require_local_live_read_owner<'a>( &'a mut self, _placement: ShardPlacement, ) -> GroupRequireLiveReadOwnerFuture<'a>
fn append_batch_many_with_cold_admission<'a>( &'a mut self, requests: Vec<AppendBatchRequest>, placement: ShardPlacement, admission: ColdWriteAdmission, ) -> GroupWriteBatchFuture<'a>
fn write_batch<'a>( &'a mut self, commands: Vec<GroupWriteCommand>, placement: ShardPlacement, ) -> GroupWriteBatchFuture<'a>
Auto Trait Implementations§
impl Freeze for InMemoryGroupEngine
impl !RefUnwindSafe for InMemoryGroupEngine
impl Send for InMemoryGroupEngine
impl Sync for InMemoryGroupEngine
impl Unpin for InMemoryGroupEngine
impl UnsafeUnpin for InMemoryGroupEngine
impl !UnwindSafe for InMemoryGroupEngine
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