fn build_update_stream<G, Tr>(
    trace: Arranged<G, Tr>,
    trace_key_types: Option<Vec<ColumnType>>,
    trace_val_types: Option<Vec<ColumnType>>,
    as_of: Antichain<Timestamp>,
    source_relation: usize,
    initial_closure: JoinClosure
) -> (Collection<G, Row, Diff>, Collection<G, DataflowError, Diff>)where
    G: Scope,
    G::Timestamp: RenderTimestamp,
    Tr: for<'a> TraceReader<Time = G::Timestamp, Diff = Diff> + Clone + 'static,
    for<'a> Tr::Key<'a>: IntoRowByTypes,
    for<'a> Tr::Val<'a>: IntoRowByTypes,
Expand description

Builds the beginning of the update stream of a delta path.

At start-up time only the delta path for the first relation sees updates, since any updates fed to the other delta paths would be discarded anyway due to the tie-breaking logic that avoids double-counting updates happening at the same time on different relations.