Struct mz_compute_client::plan::join::delta_join::DeltaJoinPlan
source · pub struct DeltaJoinPlan {
pub path_plans: Vec<DeltaPathPlan>,
}
Expand description
A delta query is implemented by a set of paths, one for each input.
Each delta query path responds to its input changes by repeated lookups in arrangements for other join inputs. These lookups require specific instructions about which expressions to use as keys. Along the way, various closures are applied to filter and project as early as possible.
Fields§
§path_plans: Vec<DeltaPathPlan>
The set of path plans.
Each path identifies its source relation, so the order is only important for determinism of dataflow construction.
Implementations§
source§impl DeltaJoinPlan
impl DeltaJoinPlan
sourcepub fn create_from(
equivalences: &[Vec<MirScalarExpr>],
join_orders: &[Vec<(usize, Vec<MirScalarExpr>, Option<JoinInputCharacteristics>)>],
input_mapper: JoinInputMapper,
map_filter_project: &mut MapFilterProject,
available: &[AvailableCollections]
) -> (Self, Vec<AvailableCollections>)
pub fn create_from( equivalences: &[Vec<MirScalarExpr>], join_orders: &[Vec<(usize, Vec<MirScalarExpr>, Option<JoinInputCharacteristics>)>], input_mapper: JoinInputMapper, map_filter_project: &mut MapFilterProject, available: &[AvailableCollections] ) -> (Self, Vec<AvailableCollections>)
Create a new join plan from the required arguments.
Trait Implementations§
source§impl Arbitrary for DeltaJoinPlan
impl Arbitrary for DeltaJoinPlan
§type Parameters = ()
type Parameters = ()
The type of parameters that
arbitrary_with
accepts for configuration
of the generated Strategy
. Parameters must implement Default
.§type Strategy = BoxedStrategy<DeltaJoinPlan>
type Strategy = BoxedStrategy<DeltaJoinPlan>
The type of
Strategy
used to generate values of type Self
.source§fn arbitrary_with(_: Self::Parameters) -> Self::Strategy
fn arbitrary_with(_: Self::Parameters) -> Self::Strategy
source§impl Clone for DeltaJoinPlan
impl Clone for DeltaJoinPlan
source§fn clone(&self) -> DeltaJoinPlan
fn clone(&self) -> DeltaJoinPlan
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 Debug for DeltaJoinPlan
impl Debug for DeltaJoinPlan
source§impl<'de> Deserialize<'de> for DeltaJoinPlan
impl<'de> Deserialize<'de> for DeltaJoinPlan
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 DisplayText<PlanRenderingContext<'_, Plan<Timestamp>>> for DeltaJoinPlan
impl DisplayText<PlanRenderingContext<'_, Plan<Timestamp>>> for DeltaJoinPlan
source§impl PartialEq<DeltaJoinPlan> for DeltaJoinPlan
impl PartialEq<DeltaJoinPlan> for DeltaJoinPlan
source§fn eq(&self, other: &DeltaJoinPlan) -> bool
fn eq(&self, other: &DeltaJoinPlan) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl RustType<ProtoDeltaJoinPlan> for DeltaJoinPlan
impl RustType<ProtoDeltaJoinPlan> for DeltaJoinPlan
source§fn into_proto(&self) -> ProtoDeltaJoinPlan
fn into_proto(&self) -> ProtoDeltaJoinPlan
Convert a
Self
into a Proto
value.source§fn from_proto(proto: ProtoDeltaJoinPlan) -> Result<Self, TryFromProtoError>
fn from_proto(proto: ProtoDeltaJoinPlan) -> Result<Self, TryFromProtoError>
source§impl Serialize for DeltaJoinPlan
impl Serialize for DeltaJoinPlan
impl Eq for DeltaJoinPlan
impl StructuralEq for DeltaJoinPlan
impl StructuralPartialEq for DeltaJoinPlan
Auto Trait Implementations§
impl RefUnwindSafe for DeltaJoinPlan
impl Send for DeltaJoinPlan
impl Sync for DeltaJoinPlan
impl Unpin for DeltaJoinPlan
impl UnwindSafe for DeltaJoinPlan
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<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.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
.