Struct raftstore::store::fsm::store::RaftBatchSystem[][src]

pub struct RaftBatchSystem<EK: KvEngine, ER: RaftEngine> {
    system: BatchSystem<PeerFsm<EK, ER>, StoreFsm<EK>>,
    apply_router: ApplyRouter<EK>,
    apply_system: ApplyBatchSystem<EK>,
    router: RaftRouter<EK, ER>,
    workers: Option<Workers<EK>>,
}

Fields

system: BatchSystem<PeerFsm<EK, ER>, StoreFsm<EK>>apply_router: ApplyRouter<EK>apply_system: ApplyBatchSystem<EK>router: RaftRouter<EK, ER>workers: Option<Workers<EK>>

Implementations

impl<EK: KvEngine, ER: RaftEngine> RaftBatchSystem<EK, ER>[src]

pub fn router(&self) -> RaftRouter<EK, ER>[src]

pub fn apply_router(&self) -> ApplyRouter<EK>[src]

pub fn spawn<T: Transport + 'static, C: PdClient + 'static>(
    &mut self,
    meta: Store,
    cfg: Arc<VersionTrack<Config>>,
    engines: Engines<EK, ER>,
    trans: T,
    pd_client: Arc<C>,
    mgr: SnapManager,
    pd_worker: FutureWorker<PdTask<EK>>,
    store_meta: Arc<Mutex<StoreMeta>>,
    coprocessor_host: CoprocessorHost<EK>,
    importer: Arc<SSTImporter>,
    split_check_scheduler: Scheduler<SplitCheckTask>,
    background_worker: Worker,
    auto_split_controller: AutoSplitController,
    global_replication_state: Arc<Mutex<GlobalReplicationState>>,
    concurrency_manager: ConcurrencyManager
) -> Result<()>
[src]

fn start_system<T: Transport + 'static, C: PdClient + 'static, W: WriteBatch<EK> + 'static>(
    &mut self,
    workers: Workers<EK>,
    region_peers: Vec<(LooseBoundedSender<PeerMsg<EK>>, Box<PeerFsm<EK, ER>>)>,
    builder: RaftPollerBuilder<EK, ER, T>,
    auto_split_controller: AutoSplitController,
    concurrency_manager: ConcurrencyManager,
    snap_mgr: SnapManager,
    pd_client: Arc<C>
) -> Result<()>
[src]

pub fn shutdown(&mut self)[src]

Auto Trait Implementations

impl<EK, ER> !RefUnwindSafe for RaftBatchSystem<EK, ER>

impl<EK, ER> Send for RaftBatchSystem<EK, ER>

impl<EK, ER> !Sync for RaftBatchSystem<EK, ER>

impl<EK, ER> Unpin for RaftBatchSystem<EK, ER>

impl<EK, ER> !UnwindSafe for RaftBatchSystem<EK, ER>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<V, W> ConvertFrom<W> for V where
    W: ConvertTo<V>, 
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Pointable for T[src]

type Init = T

The type for initializers.

impl<T> Pointable for T[src]

type Init = T

The type for initializers.

impl<T> Same<T> for T[src]

type Output = T

Should always be Self

impl<T> Sealed<T> for T where
    T: ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]