MCPcopy Create free account
hub / github.com/apache/paimon-rust / FormatFileReader

Interface FormatFileReader

crates/paimon/src/arrow/format/mod.rs:49–64  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

47/// - Row range selection
48#[async_trait]
49pub(crate) trait FormatFileReader: Send + Sync {
50 /// Read a single data file, returning a stream of RecordBatches
51 /// containing only the projected columns (using names from the file's schema).
52 ///
53 /// `row_selection` is a pre-merged list of 0-based inclusive row ranges
54 /// (DV + row_ranges already combined by the caller).
55 async fn read_batch_stream(
56 &self,
57 reader: Box<dyn FileRead>,
58 file_size: u64,
59 read_fields: &[DataField],
60 predicates: Option<&FilePredicates>,
61 batch_size: Option<usize>,
62 row_selection: Option<Vec<RowRange>>,
63 ) -> crate::Result<ArrowRecordBatchStream>;
64}
65
66/// Format-agnostic file writer that streams Arrow RecordBatches directly to storage.
67///

Callers

nothing calls this directly

Implementers 5

blob.rscrates/paimon/src/arrow/format/blob.rs
orc.rscrates/paimon/src/arrow/format/orc.rs
vortex.rscrates/paimon/src/arrow/format/vortex.
avro.rscrates/paimon/src/arrow/format/avro.rs
parquet.rscrates/paimon/src/arrow/format/parquet

Calls

no outgoing calls

Tested by

no test coverage detected