Struct dataflow_types::plan::join::linear_join::LinearStagePlan [−][src]
pub struct LinearStagePlan {
pub lookup_relation: usize,
pub stream_key: Vec<MirScalarExpr>,
pub stream_thinning: Vec<usize>,
pub lookup_key: Vec<MirScalarExpr>,
pub closure: JoinClosure,
}
Expand description
A plan for the execution of one stage of a linear join.
Each stage is a binary join between the current accumulated join results, and a new collection. The former is referred to as the “stream” and the latter the “lookup”.
Fields
lookup_relation: usize
The relation index into which we will look up.
stream_key: Vec<MirScalarExpr>
The key expressions to use for the streamed relation.
While this starts as a stream of the source relation, it evolves through multiple lookups and ceases to be the same thing, hence the different name.
stream_thinning: Vec<usize>
The thinning expression to use to remove redundant value columns when arranging the stream.
lookup_key: Vec<MirScalarExpr>
The key expressions to use for the lookup relation.
closure: JoinClosure
The closure to apply to the concatenation of columns of the stream and lookup relations.
Trait Implementations
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
Auto Trait Implementations
impl RefUnwindSafe for LinearStagePlan
impl Send for LinearStagePlan
impl Sync for LinearStagePlan
impl Unpin for LinearStagePlan
impl UnwindSafe for LinearStagePlan
Blanket Implementations
Mutably borrows from an owned value. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more