Struct mz_compute_client::command::Peek
source · pub struct Peek<T = Timestamp> {
pub id: GlobalId,
pub literal_constraints: Option<Vec<Row>>,
pub uuid: Uuid,
pub timestamp: T,
pub finishing: RowSetFinishing,
pub map_filter_project: SafeMfpPlan,
pub otel_ctx: OpenTelemetryContext,
}Expand description
Peek at an arrangement.
This request elicits data from the worker, by naming an arrangement and some actions to apply to the results before returning them.
The timestamp member must be valid for the arrangement that
is referenced by id. This means that AllowCompaction for
this arrangement should not pass timestamp before this command.
Subsequent commands may arbitrarily compact the arrangements;
the dataflow runners are responsible for ensuring that they can
correctly answer the Peek.
Fields§
§id: GlobalIdThe identifier of the arrangement.
literal_constraints: Option<Vec<Row>>If Some, then look up only the given keys from the arrangement (instead of a full scan).
The vector is never empty.
uuid: UuidThe identifier of this peek request.
Used in responses and cancellation requests.
timestamp: TThe logical timestamp at which the arrangement is queried.
finishing: RowSetFinishingActions to apply to the result set before returning them.
map_filter_project: SafeMfpPlanLinear operation to apply in-line on each result.
otel_ctx: OpenTelemetryContextAn OpenTelemetryContext to forward trace information along
to the compute worker to allow associating traces between
the compute controller and the compute worker.
Trait Implementations§
source§impl<T: Arbitrary> Arbitrary for Peek<T>
impl<T: Arbitrary> Arbitrary for Peek<T>
§type Parameters = (<GlobalId as Arbitrary>::Parameters, <T as Arbitrary>::Parameters, <RowSetFinishing as Arbitrary>::Parameters, <SafeMfpPlan as Arbitrary>::Parameters)
type Parameters = (<GlobalId as Arbitrary>::Parameters, <T as Arbitrary>::Parameters, <RowSetFinishing as Arbitrary>::Parameters, <SafeMfpPlan as Arbitrary>::Parameters)
arbitrary_with accepts for configuration
of the generated Strategy. Parameters must implement Default.§type Strategy = Map<(<GlobalId as Arbitrary>::Strategy, BoxedStrategy<Option<Vec<Row, Global>>>, BoxedStrategy<Uuid>, <T as Arbitrary>::Strategy, <RowSetFinishing as Arbitrary>::Strategy, <SafeMfpPlan as Arbitrary>::Strategy, BoxedStrategy<OpenTelemetryContext>), fn(_: (GlobalId, Option<Vec<Row, Global>>, Uuid, T, RowSetFinishing, SafeMfpPlan, OpenTelemetryContext)) -> Peek<T>>
type Strategy = Map<(<GlobalId as Arbitrary>::Strategy, BoxedStrategy<Option<Vec<Row, Global>>>, BoxedStrategy<Uuid>, <T as Arbitrary>::Strategy, <RowSetFinishing as Arbitrary>::Strategy, <SafeMfpPlan as Arbitrary>::Strategy, BoxedStrategy<OpenTelemetryContext>), fn(_: (GlobalId, Option<Vec<Row, Global>>, Uuid, T, RowSetFinishing, SafeMfpPlan, OpenTelemetryContext)) -> Peek<T>>
Strategy used to generate values of type Self.source§fn arbitrary_with(_top: Self::Parameters) -> Self::Strategy
fn arbitrary_with(_top: Self::Parameters) -> Self::Strategy
source§impl<'de, T> Deserialize<'de> for Peek<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for Peek<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>,
source§impl<T: PartialEq> PartialEq<Peek<T>> for Peek<T>
impl<T: PartialEq> PartialEq<Peek<T>> for Peek<T>
source§impl RustType<ProtoPeek> for Peek
impl RustType<ProtoPeek> for Peek
source§fn into_proto(&self) -> ProtoPeek
fn into_proto(&self) -> ProtoPeek
Self into a Proto value.source§fn from_proto(x: ProtoPeek) -> Result<Self, TryFromProtoError>
fn from_proto(x: ProtoPeek) -> Result<Self, TryFromProtoError>
impl<T> StructuralPartialEq for Peek<T>
Auto Trait Implementations§
impl<T> RefUnwindSafe for Peek<T>where
T: RefUnwindSafe,
impl<T> Send for Peek<T>where
T: Send,
impl<T> Sync for Peek<T>where
T: Sync,
impl<T> Unpin for Peek<T>where
T: Unpin,
impl<T> UnwindSafe for Peek<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>
T in a tonic::Requestsource§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>
RustType::from_proto.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
RustType::into_proto.