build_streaming_pipeline

Function build_streaming_pipeline 

Source
pub fn build_streaming_pipeline<'a, 'txn: 'a, S: KVStore + 'txn, C: Catalog + ?Sized, T: SqlTxn<'txn, S>>(
    txn: &'a mut T,
    catalog: &C,
    plan: LogicalPlan,
) -> Result<(Box<dyn RowIterator + 'a>, Projection, Vec<ColumnMetadata>)>
Expand description

Build a streaming iterator pipeline from a logical plan (FR-7).

This version uses ScanIterator for row-based tables to enable true streaming without materializing all rows upfront. The returned iterator has lifetime 'a tied to the transaction borrow.

ยงLimitations

  • Columnar storage still materializes rows (uses VecIterator)
  • Sort operations materialize all input rows
  • KNN queries are not supported (use build_iterator_pipeline instead)