pub struct StateMachineWorker<T: TypeConfig> { /* private fields */ }Expand description
State Machine Worker
Decouples state machine apply operations from CommitHandler. Runs in independent task, allowing apply_chunk I/O to not block commit processing.
On shutdown:
- Drains remaining entries from sm_apply_rx until channel closes
- Completes all pending applies before shutdown
- This ensures no data loss and all results are propagated to Leader
Implementations§
Auto Trait Implementations§
impl<T> Freeze for StateMachineWorker<T>
impl<T> RefUnwindSafe for StateMachineWorker<T>where
<T as TypeConfig>::SMH: RefUnwindSafe,
impl<T> Send for StateMachineWorker<T>
impl<T> Sync for StateMachineWorker<T>
impl<T> Unpin for StateMachineWorker<T>
impl<T> UnsafeUnpin for StateMachineWorker<T>
impl<T> UnwindSafe for StateMachineWorker<T>where
<T as TypeConfig>::SMH: RefUnwindSafe,
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
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