Struct mz_persist_client::rpc::GrpcPubSubClient
source · pub struct GrpcPubSubClient;
Expand description
A PersistPubSubClient implementation backed by gRPC.
Returns a PubSubClientConnection backed by channels that submit and receive messages to and from a long-lived bidirectional gRPC stream. The gRPC stream will be transparently reestablished if the connection is lost.
Implementations§
source§impl GrpcPubSubClient
impl GrpcPubSubClient
async fn reconnect_to_server_forever( send_requests: Sender<ProtoPubSubMessage>, receiver_input: &Sender<ProtoPubSubMessage>, sender: Arc<SubscriptionTrackingSender>, metadata: MetadataMap, config: PersistPubSubClientConfig, metrics: Arc<Metrics>, )
async fn consume_grpc_stream( responses: Streaming<ProtoPubSubMessage>, receiver_input: &Sender<ProtoPubSubMessage>, config: &PersistPubSubClientConfig, metrics: &Metrics, ) -> Result<(), Error>
Trait Implementations§
source§impl Debug for GrpcPubSubClient
impl Debug for GrpcPubSubClient
source§impl PersistPubSubClient for GrpcPubSubClient
impl PersistPubSubClient for GrpcPubSubClient
source§fn connect(
config: PersistPubSubClientConfig,
metrics: Arc<Metrics>,
) -> PubSubClientConnection
fn connect( config: PersistPubSubClientConfig, metrics: Arc<Metrics>, ) -> PubSubClientConnection
Receive handles with which to push and subscribe to diffs.
Auto Trait Implementations§
impl Freeze for GrpcPubSubClient
impl RefUnwindSafe for GrpcPubSubClient
impl Send for GrpcPubSubClient
impl Sync for GrpcPubSubClient
impl Unpin for GrpcPubSubClient
impl UnwindSafe for GrpcPubSubClient
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> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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
Creates a shared type from an unshared type.
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See
RustType::into_proto
.source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
The method of
std::ops::AddAssign
, for types that do not implement AddAssign
.