Type Alias CoordinatorStreamHandle

Source
pub type CoordinatorStreamHandle = BidiStreamHandle<CoordinateRequest, CoordinateResponse>;

Aliased Type§

struct CoordinatorStreamHandle {
    pub request_sender: BidiStreamSender<CoordinateRequest>,
    pub response_stream: BidiStreamReceiver<CoordinateResponse>,
}

Fields§

§request_sender: BidiStreamSender<CoordinateRequest>§response_stream: BidiStreamReceiver<CoordinateResponse>

Implementations§

Source§

impl CoordinatorStreamHandle

Source

pub async fn new( client: SinkCoordinationRpcClient, param: PbSinkParam, vnode_bitmap: Bitmap, ) -> Result<(Self, Option<u64>), RpcError>

Source

pub async fn new_with_init_stream<F, St, Fut>( param: PbSinkParam, vnode_bitmap: Bitmap, init_stream: F, ) -> Result<(Self, Option<u64>), RpcError>
where F: FnOnce(Receiver<CoordinateRequest>) -> Fut + Send, St: Stream<Item = Result<CoordinateResponse, Status>> + Send + Unpin + 'static, Fut: Future<Output = Result<Response<St>, Status>> + Send,

Source

pub async fn commit(&mut self, epoch: u64, metadata: SinkMetadata) -> Result<()>

Source

pub async fn update_vnode_bitmap( &mut self, vnode_bitmap: &Bitmap, ) -> Result<u64>

Source

pub async fn stop(self) -> Result<()>

Source

pub async fn align_initial_epoch(&mut self, initial_epoch: u64) -> Result<u64>