Enum mz_storage_client::client::StorageResponse
source · pub enum StorageResponse<T = Timestamp> {
FrontierUppers(Vec<(GlobalId, Antichain<T>)>),
DroppedIds(Vec<GlobalId>),
StatisticsUpdates(Vec<SourceStatisticsUpdate>, Vec<SinkStatisticsUpdate>),
}
Expand description
Responses that the storage nature of a worker/dataflow can provide back to the coordinator.
Variants§
FrontierUppers(Vec<(GlobalId, Antichain<T>)>)
A list of identifiers of traces, with new upper frontiers.
TODO(teskje): Consider also reporting the previous upper frontier and using that information to assert the correct implementation of our protocols at various places.
DroppedIds(Vec<GlobalId>)
Punctuation indicates that no more responses will be transmitted for the specified ids
StatisticsUpdates(Vec<SourceStatisticsUpdate>, Vec<SinkStatisticsUpdate>)
A list of statistics updates, currently only for sources.
Trait Implementations§
source§impl Arbitrary for StorageResponse<Timestamp>
impl Arbitrary for StorageResponse<Timestamp>
§type Strategy = Union<BoxedStrategy<StorageResponse<Timestamp>>>
type Strategy = Union<BoxedStrategy<StorageResponse<Timestamp>>>
The type of
Strategy
used to generate values of type Self
.§type Parameters = ()
type Parameters = ()
The type of parameters that
arbitrary_with
accepts for configuration
of the generated Strategy
. Parameters must implement Default
.source§fn arbitrary_with(_: Self::Parameters) -> Self::Strategy
fn arbitrary_with(_: Self::Parameters) -> Self::Strategy
source§impl<T: Clone> Clone for StorageResponse<T>
impl<T: Clone> Clone for StorageResponse<T>
source§fn clone(&self) -> StorageResponse<T>
fn clone(&self) -> StorageResponse<T>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<T: Debug> Debug for StorageResponse<T>
impl<T: Debug> Debug for StorageResponse<T>
source§impl<'de, T> Deserialize<'de> for StorageResponse<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for StorageResponse<T>where
T: Deserialize<'de>,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl<T: Send> GenericClient<StorageCommand<T>, StorageResponse<T>> for Box<dyn StorageClient<T>>
impl<T: Send> GenericClient<StorageCommand<T>, StorageResponse<T>> for Box<dyn StorageClient<T>>
source§fn send<'life0, 'async_trait>(
&'life0 mut self,
cmd: StorageCommand<T>
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn send<'life0, 'async_trait>(
&'life0 mut self,
cmd: StorageCommand<T>
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Sends a command to the dataflow server. Read more
source§impl<T: PartialEq> PartialEq<StorageResponse<T>> for StorageResponse<T>
impl<T: PartialEq> PartialEq<StorageResponse<T>> for StorageResponse<T>
source§fn eq(&self, other: &StorageResponse<T>) -> bool
fn eq(&self, other: &StorageResponse<T>) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl<T> Partitionable<StorageCommand<T>, StorageResponse<T>> for (StorageCommand<T>, StorageResponse<T>)where
T: Timestamp + Lattice,
impl<T> Partitionable<StorageCommand<T>, StorageResponse<T>> for (StorageCommand<T>, StorageResponse<T>)where
T: Timestamp + Lattice,
§type PartitionedState = PartitionedStorageState<T>
type PartitionedState = PartitionedStorageState<T>
The type which functions as the state machine for the partitioning.
source§fn new(parts: usize) -> PartitionedStorageState<T>
fn new(parts: usize) -> PartitionedStorageState<T>
Construct a
PartitionedState
for the command–response pair.source§impl<T> PartitionedState<StorageCommand<T>, StorageResponse<T>> for PartitionedStorageState<T>where
T: Timestamp + Lattice,
impl<T> PartitionedState<StorageCommand<T>, StorageResponse<T>> for PartitionedStorageState<T>where
T: Timestamp + Lattice,
source§fn split_command(
&mut self,
command: StorageCommand<T>
) -> Vec<Option<StorageCommand<T>>> ⓘ
fn split_command(
&mut self,
command: StorageCommand<T>
) -> Vec<Option<StorageCommand<T>>> ⓘ
Splits a command into multiple partitions.
source§fn absorb_response(
&mut self,
shard_id: usize,
response: StorageResponse<T>
) -> Option<Result<StorageResponse<T>, Error>>
fn absorb_response(
&mut self,
shard_id: usize,
response: StorageResponse<T>
) -> Option<Result<StorageResponse<T>, Error>>
Absorbs a response from a single partition. Read more
source§impl RustType<ProtoStorageResponse> for StorageResponse<Timestamp>
impl RustType<ProtoStorageResponse> for StorageResponse<Timestamp>
source§fn into_proto(&self) -> ProtoStorageResponse
fn into_proto(&self) -> ProtoStorageResponse
Convert a
Self
into a Proto
value.source§fn from_proto(proto: ProtoStorageResponse) -> Result<Self, TryFromProtoError>
fn from_proto(proto: ProtoStorageResponse) -> Result<Self, TryFromProtoError>
source§impl<T> Serialize for StorageResponse<T>where
T: Serialize,
impl<T> Serialize for StorageResponse<T>where
T: Serialize,
impl<T> StructuralPartialEq for StorageResponse<T>
Auto Trait Implementations§
impl<T> RefUnwindSafe for StorageResponse<T>where
T: RefUnwindSafe,
impl<T> Send for StorageResponse<T>where
T: Send,
impl<T> Sync for StorageResponse<T>where
T: Sync,
impl<T> Unpin for StorageResponse<T>where
T: Unpin,
impl<T> UnwindSafe for StorageResponse<T>where
T: UnwindSafe,
Blanket Implementations§
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
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
.