pub struct MemoryMultiRootPublicationStore { /* private fields */ }Expand description
Process-local durable-state substitute for deterministic tests.
Trait Implementations§
Source§impl MultiRootPublicationStore for MemoryMultiRootPublicationStore
impl MultiRootPublicationStore for MemoryMultiRootPublicationStore
Source§type Error = MemoryMultiRootPublicationStoreError
type Error = MemoryMultiRootPublicationStoreError
Adapter error.
Source§async fn load(
&self,
operation_id: OperationId,
) -> Result<Option<MultiRootPublication>, Self::Error>
async fn load( &self, operation_id: OperationId, ) -> Result<Option<MultiRootPublication>, Self::Error>
Loads one operation record.
Source§async fn compare_and_swap(
&self,
operation_id: OperationId,
expected_revision: u64,
replacement: MultiRootPublication,
) -> Result<bool, Self::Error>
async fn compare_and_swap( &self, operation_id: OperationId, expected_revision: u64, replacement: MultiRootPublication, ) -> Result<bool, Self::Error>
Atomically replaces one expected revision; zero creates the record.
Source§async fn list_operations(&self) -> Result<Vec<OperationId>, Self::Error>
async fn list_operations(&self) -> Result<Vec<OperationId>, Self::Error>
Lists durable operations that may require restart recovery.
Source§async fn compare_and_delete(
&self,
operation_id: OperationId,
expected_revision: u64,
) -> Result<bool, Self::Error>
async fn compare_and_delete( &self, operation_id: OperationId, expected_revision: u64, ) -> Result<bool, Self::Error>
Removes a terminal record only when its exact revision still matches.
Failed physical cleanup leaves the record intact for restart recovery.
Source§async fn claim_parent(
&self,
parent_context_id: WorkspaceContextId,
operation_id: OperationId,
) -> Result<bool, Self::Error>
async fn claim_parent( &self, parent_context_id: WorkspaceContextId, operation_id: OperationId, ) -> Result<bool, Self::Error>
Atomically claims the one publication slot for a parent context.
Source§async fn release_parent(
&self,
parent_context_id: WorkspaceContextId,
operation_id: OperationId,
) -> Result<bool, Self::Error>
async fn release_parent( &self, parent_context_id: WorkspaceContextId, operation_id: OperationId, ) -> Result<bool, Self::Error>
Releases the exact parent claim after terminal cleanup.
Auto Trait Implementations§
impl !Freeze for MemoryMultiRootPublicationStore
impl RefUnwindSafe for MemoryMultiRootPublicationStore
impl Send for MemoryMultiRootPublicationStore
impl Sync for MemoryMultiRootPublicationStore
impl Unpin for MemoryMultiRootPublicationStore
impl UnsafeUnpin for MemoryMultiRootPublicationStore
impl UnwindSafe for MemoryMultiRootPublicationStore
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request