Function tikv::server::raft_client::start[][src]

async fn start<S, R, E>(
    back_end: StreamBackEnd<S, R, E>,
    conn_id: usize,
    pool: Arc<Mutex<ConnectionPool>>
) where
    S: StoreAddrResolver + Send,
    R: RaftStoreRouter<E> + Unpin + Send + 'static,
    E: KvEngine

A future that drives the life cycle of a connection.

The general progress of connection is:

  1. resolve address
  2. connect
  3. make batch call
  4. fallback to legacy API if incompatible

Every failure during the process should trigger retry automatically.