pub enum ActiveReplicationResponse<T = Timestamp> {
ComputeResponse(ComputeResponse<T>),
ReplicaHeartbeat(ReplicaId, DateTime<Utc>),
}
Expand description
A response from the ActiveReplication client: either a deduplicated compute response, or a notification that we heard from a given replica and should update its recency status.
Variants
ComputeResponse(ComputeResponse<T>)
A response from the compute layer.
ReplicaHeartbeat(ReplicaId, DateTime<Utc>)
A notification that we heard a response from the given replica at the given time.
Trait Implementations
sourceimpl<T: Clone> Clone for ActiveReplicationResponse<T>
impl<T: Clone> Clone for ActiveReplicationResponse<T>
sourcefn clone(&self) -> ActiveReplicationResponse<T>
fn clone(&self) -> ActiveReplicationResponse<T>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<T: Debug> Debug for ActiveReplicationResponse<T>
impl<T: Debug> Debug for ActiveReplicationResponse<T>
sourceimpl<T> GenericClient<ComputeCommand<T>, ActiveReplicationResponse<T>> for ActiveReplication<T> where
T: Timestamp + Lattice + Debug,
impl<T> GenericClient<ComputeCommand<T>, ActiveReplicationResponse<T>> for ActiveReplication<T> where
T: Timestamp + Lattice + Debug,
sourcefn send<'life0, 'async_trait>(
&'life0 mut self,
cmd: ComputeCommand<T>
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn send<'life0, 'async_trait>(
&'life0 mut self,
cmd: ComputeCommand<T>
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
The ADAPTER layer’s isolation from COMPUTE depends on the fact that this function is essentially non-blocking, i.e. the ADAPTER blindly awaits calls to this function. This lets the ADAPTER continue operating even in the face of unhealthy or absent replicas.
If this function every become blocking (e.g. making networking calls), the ADAPTER must amend its contract with COMPUTE.
Auto Trait Implementations
impl<T> RefUnwindSafe for ActiveReplicationResponse<T> where
T: RefUnwindSafe,
impl<T> Send for ActiveReplicationResponse<T> where
T: Send,
impl<T> Sync for ActiveReplicationResponse<T> where
T: Sync,
impl<T> Unpin for ActiveReplicationResponse<T> where
T: Unpin,
impl<T> UnwindSafe for ActiveReplicationResponse<T> where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> FutureExt for T
impl<T> FutureExt for T
sourcefn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
sourcefn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
sourcefn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message T
in a tonic::Request
sourceimpl<T> ProgressEventTimestamp for T where
T: Data + Debug + Any,
impl<T> ProgressEventTimestamp for T where
T: Data + Debug + Any,
sourceimpl<P, R> ProtoType<R> for P where
R: RustType<P>,
impl<P, R> ProtoType<R> for P where
R: RustType<P>,
sourcefn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See RustType::from_proto
.
sourcefn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See RustType::into_proto
.
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more