Skip to main content

GroupEngine

Trait GroupEngine 

Source
pub trait GroupEngine: Send + 'static {
Show 31 methods // Required methods fn create_stream<'a>( &'a mut self, request: CreateStreamRequest, placement: ShardPlacement, ) -> GroupCreateStreamFuture<'a>; fn head_stream<'a>( &'a mut self, request: HeadStreamRequest, placement: ShardPlacement, ) -> GroupHeadStreamFuture<'a>; fn read_stream<'a>( &'a mut self, request: ReadStreamRequest, placement: ShardPlacement, ) -> GroupReadStreamFuture<'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 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_batch<'a>( &'a mut self, request: AppendBatchRequest, placement: ShardPlacement, ) -> GroupAppendBatchFuture<'a>; fn snapshot<'a>( &'a mut self, placement: ShardPlacement, ) -> GroupSnapshotFuture<'a>; fn install_snapshot<'a>( &'a mut self, snapshot: GroupSnapshot, ) -> GroupInstallSnapshotFuture<'a>; // Provided methods fn accepts_local_writes(&self) -> bool { ... } fn create_stream_external<'a>( &'a mut self, request: CreateStreamExternalRequest, _placement: ShardPlacement, ) -> GroupCreateStreamFuture<'a> { ... } fn read_stream_parts<'a>( &'a mut self, request: ReadStreamRequest, placement: ShardPlacement, ) -> GroupReadStreamPartsFuture<'a> { ... } fn require_local_live_read_owner<'a>( &'a mut self, _placement: ShardPlacement, ) -> GroupRequireLiveReadOwnerFuture<'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 append_external<'a>( &'a mut self, request: AppendExternalRequest, _placement: ShardPlacement, ) -> GroupAppendFuture<'a> { ... } fn create_stream_with_cold_admission<'a>( &'a mut self, request: CreateStreamRequest, placement: ShardPlacement, _admission: ColdWriteAdmission, ) -> GroupCreateStreamFuture<'a> { ... } fn append_with_cold_admission<'a>( &'a mut self, request: AppendRequest, placement: ShardPlacement, _admission: ColdWriteAdmission, ) -> GroupAppendFuture<'a> { ... } fn append_batch_with_cold_admission<'a>( &'a mut self, request: AppendBatchRequest, placement: ShardPlacement, _admission: ColdWriteAdmission, ) -> GroupAppendBatchFuture<'a> { ... } fn append_batch_many_with_cold_admission<'a>( &'a mut self, requests: Vec<AppendBatchRequest>, placement: ShardPlacement, admission: ColdWriteAdmission, ) -> GroupWriteBatchFuture<'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 write_batch<'a>( &'a mut self, commands: Vec<GroupWriteCommand>, placement: ShardPlacement, ) -> GroupWriteBatchFuture<'a> { ... }
}

Required Methods§

Source

fn create_stream<'a>( &'a mut self, request: CreateStreamRequest, placement: ShardPlacement, ) -> GroupCreateStreamFuture<'a>

Source

fn head_stream<'a>( &'a mut self, request: HeadStreamRequest, placement: ShardPlacement, ) -> GroupHeadStreamFuture<'a>

Source

fn read_stream<'a>( &'a mut self, request: ReadStreamRequest, placement: ShardPlacement, ) -> GroupReadStreamFuture<'a>

Source

fn touch_stream_access<'a>( &'a mut self, stream_id: BucketStreamId, now_ms: u64, renew_ttl: bool, placement: ShardPlacement, ) -> GroupTouchStreamAccessFuture<'a>

Source

fn add_fork_ref<'a>( &'a mut self, stream_id: BucketStreamId, now_ms: u64, placement: ShardPlacement, ) -> GroupForkRefFuture<'a>

Source

fn release_fork_ref<'a>( &'a mut self, stream_id: BucketStreamId, placement: ShardPlacement, ) -> GroupForkRefFuture<'a>

Source

fn close_stream<'a>( &'a mut self, request: CloseStreamRequest, placement: ShardPlacement, ) -> GroupCloseStreamFuture<'a>

Source

fn delete_stream<'a>( &'a mut self, request: DeleteStreamRequest, placement: ShardPlacement, ) -> GroupDeleteStreamFuture<'a>

Source

fn append<'a>( &'a mut self, request: AppendRequest, placement: ShardPlacement, ) -> GroupAppendFuture<'a>

Source

fn append_batch<'a>( &'a mut self, request: AppendBatchRequest, placement: ShardPlacement, ) -> GroupAppendBatchFuture<'a>

Source

fn snapshot<'a>( &'a mut self, placement: ShardPlacement, ) -> GroupSnapshotFuture<'a>

Source

fn install_snapshot<'a>( &'a mut self, snapshot: GroupSnapshot, ) -> GroupInstallSnapshotFuture<'a>

Provided Methods§

Source

fn accepts_local_writes(&self) -> bool

Source

fn create_stream_external<'a>( &'a mut self, request: CreateStreamExternalRequest, _placement: ShardPlacement, ) -> GroupCreateStreamFuture<'a>

Source

fn read_stream_parts<'a>( &'a mut self, request: ReadStreamRequest, placement: ShardPlacement, ) -> GroupReadStreamPartsFuture<'a>

Source

fn require_local_live_read_owner<'a>( &'a mut self, _placement: ShardPlacement, ) -> GroupRequireLiveReadOwnerFuture<'a>

Source

fn publish_snapshot<'a>( &'a mut self, request: PublishSnapshotRequest, _placement: ShardPlacement, ) -> GroupPublishSnapshotFuture<'a>

Source

fn read_snapshot<'a>( &'a mut self, request: ReadSnapshotRequest, _placement: ShardPlacement, ) -> GroupReadSnapshotFuture<'a>

Source

fn delete_snapshot<'a>( &'a mut self, request: DeleteSnapshotRequest, _placement: ShardPlacement, ) -> GroupDeleteSnapshotFuture<'a>

Source

fn bootstrap_stream<'a>( &'a mut self, request: BootstrapStreamRequest, _placement: ShardPlacement, ) -> GroupBootstrapStreamFuture<'a>

Source

fn append_external<'a>( &'a mut self, request: AppendExternalRequest, _placement: ShardPlacement, ) -> GroupAppendFuture<'a>

Source

fn create_stream_with_cold_admission<'a>( &'a mut self, request: CreateStreamRequest, placement: ShardPlacement, _admission: ColdWriteAdmission, ) -> GroupCreateStreamFuture<'a>

Source

fn append_with_cold_admission<'a>( &'a mut self, request: AppendRequest, placement: ShardPlacement, _admission: ColdWriteAdmission, ) -> GroupAppendFuture<'a>

Source

fn append_batch_with_cold_admission<'a>( &'a mut self, request: AppendBatchRequest, placement: ShardPlacement, _admission: ColdWriteAdmission, ) -> GroupAppendBatchFuture<'a>

Source

fn append_batch_many_with_cold_admission<'a>( &'a mut self, requests: Vec<AppendBatchRequest>, placement: ShardPlacement, admission: ColdWriteAdmission, ) -> GroupWriteBatchFuture<'a>

Source

fn flush_cold<'a>( &'a mut self, request: FlushColdRequest, _placement: ShardPlacement, ) -> GroupFlushColdFuture<'a>

Source

fn plan_cold_flush<'a>( &'a mut self, request: PlanColdFlushRequest, _placement: ShardPlacement, ) -> GroupPlanColdFlushFuture<'a>

Source

fn plan_next_cold_flush<'a>( &'a mut self, _request: PlanGroupColdFlushRequest, _placement: ShardPlacement, ) -> GroupPlanNextColdFlushFuture<'a>

Source

fn plan_next_cold_flush_batch<'a>( &'a mut self, request: PlanGroupColdFlushRequest, placement: ShardPlacement, max_candidates: usize, ) -> GroupPlanNextColdFlushBatchFuture<'a>

Source

fn cold_hot_backlog<'a>( &'a mut self, stream_id: BucketStreamId, _placement: ShardPlacement, ) -> GroupColdHotBacklogFuture<'a>

Source

fn write_batch<'a>( &'a mut self, commands: Vec<GroupWriteCommand>, placement: ShardPlacement, ) -> GroupWriteBatchFuture<'a>

Implementors§