Skip to main content

key_join_input_vec

Function key_join_input_vec 

Source
fn key_join_input_vec<'s, T>(
    stream: Stream<'s, T, Vec<(Row, T, Diff)>>,
    stream_key: Vec<LirScalarExpr>,
    stream_thinning: Vec<usize>,
) -> (Stream<'s, T, Column<((Row, Row), T, Diff)>>, Stream<'s, T, Vec<(DataflowErrorSer, T, Diff)>>)
where T: RenderTimestamp,
Expand description

Keys a row-formatted join input stream into columnar ((key, value), t, d) updates, splitting off key-evaluation errors into a separate stream.

The key and value are pushed borrowed into a ColumnBuilder, so the ok path materializes no owned Row per record. The error path owns time and diff. Called by arrange_join_collection for the intra-operator accumulator, which is row-formatted. arrange_join_input does the same job for the columnar source edge, reading records from the borrowed column instead.