Enum mz_storage_client::client::StorageCommand
source · pub enum StorageCommand<T = Timestamp> {
CreateTimely {
config: TimelyConfig,
epoch: ClusterStartupEpoch,
},
InitializationComplete,
UpdateConfiguration(StorageParameters),
CreateSources(Vec<CreateSourceCommand<T>>),
AllowCompaction(Vec<(GlobalId, Antichain<T>)>),
CreateSinks(Vec<CreateSinkCommand<T>>),
}
Expand description
Commands related to the ingress and egress of collections.
Variants§
CreateTimely
Specifies to the storage server(s) the shape of the timely cluster we want created, before other commands are sent.
InitializationComplete
Indicates that the controller has sent all commands reflecting its initial state.
UpdateConfiguration(StorageParameters)
Update storage instance configuration.
CreateSources(Vec<CreateSourceCommand<T>>)
Create the enumerated sources, each associated with its identifier.
AllowCompaction(Vec<(GlobalId, Antichain<T>)>)
Enable compaction in storage-managed collections.
Each entry in the vector names a collection and provides a frontier after which accumulations must be correct.
CreateSinks(Vec<CreateSinkCommand<T>>)
Trait Implementations§
source§impl Arbitrary for StorageCommand<Timestamp>
impl Arbitrary for StorageCommand<Timestamp>
§type Strategy = Union<BoxedStrategy<StorageCommand<Timestamp>>>
type Strategy = Union<BoxedStrategy<StorageCommand<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 StorageCommand<T>
impl<T: Clone> Clone for StorageCommand<T>
source§fn clone(&self) -> StorageCommand<T>
fn clone(&self) -> StorageCommand<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 StorageCommand<T>
impl<T: Debug> Debug for StorageCommand<T>
source§impl<'de, T> Deserialize<'de> for StorageCommand<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for StorageCommand<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<StorageCommand<T>> for StorageCommand<T>
impl<T: PartialEq> PartialEq<StorageCommand<T>> for StorageCommand<T>
source§fn eq(&self, other: &StorageCommand<T>) -> bool
fn eq(&self, other: &StorageCommand<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<ProtoStorageCommand> for StorageCommand<Timestamp>
impl RustType<ProtoStorageCommand> for StorageCommand<Timestamp>
source§fn into_proto(&self) -> ProtoStorageCommand
fn into_proto(&self) -> ProtoStorageCommand
Convert a
Self
into a Proto
value.source§fn from_proto(proto: ProtoStorageCommand) -> Result<Self, TryFromProtoError>
fn from_proto(proto: ProtoStorageCommand) -> Result<Self, TryFromProtoError>
source§impl<T> Serialize for StorageCommand<T>where
T: Serialize,
impl<T> Serialize for StorageCommand<T>where
T: Serialize,
impl<T> StructuralPartialEq for StorageCommand<T>
Auto Trait Implementations§
impl<T> RefUnwindSafe for StorageCommand<T>where
T: RefUnwindSafe,
impl<T> Send for StorageCommand<T>where
T: Send,
impl<T> Sync for StorageCommand<T>where
T: Sync,
impl<T> Unpin for StorageCommand<T>where
T: Unpin,
impl<T> UnwindSafe for StorageCommand<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
.