pub struct StreamingMergeBuilder<'a> {
streams: Vec<Pin<Box<dyn RecordBatchStream<Item = Result<RecordBatch, DataFusionError>> + Send>>>,
sorted_spill_files: Vec<SortedSpillFile>,
spill_manager: Option<SpillManager>,
schema: Option<Arc<Schema>>,
expressions: Option<&'a LexOrdering>,
metrics: Option<BaselineMetrics>,
batch_size: Option<usize>,
fetch: Option<usize>,
reservation: Option<MemoryReservation>,
enable_round_robin_tie_breaker: bool,
}Fields§
§streams: Vec<Pin<Box<dyn RecordBatchStream<Item = Result<RecordBatch, DataFusionError>> + Send>>>§sorted_spill_files: Vec<SortedSpillFile>§spill_manager: Option<SpillManager>§schema: Option<Arc<Schema>>§expressions: Option<&'a LexOrdering>§metrics: Option<BaselineMetrics>§batch_size: Option<usize>§fetch: Option<usize>§reservation: Option<MemoryReservation>§enable_round_robin_tie_breaker: boolImplementations§
Source§impl<'a> StreamingMergeBuilder<'a>
impl<'a> StreamingMergeBuilder<'a>
pub fn new() -> StreamingMergeBuilder<'a>
pub fn with_streams( self, streams: Vec<Pin<Box<dyn RecordBatchStream<Item = Result<RecordBatch, DataFusionError>> + Send>>>, ) -> StreamingMergeBuilder<'a>
pub fn with_sorted_spill_files( self, sorted_spill_files: Vec<SortedSpillFile>, ) -> StreamingMergeBuilder<'a>
pub fn with_spill_manager( self, spill_manager: SpillManager, ) -> StreamingMergeBuilder<'a>
pub fn with_schema(self, schema: Arc<Schema>) -> StreamingMergeBuilder<'a>
pub fn with_expressions( self, expressions: &'a LexOrdering, ) -> StreamingMergeBuilder<'a>
pub fn with_metrics(self, metrics: BaselineMetrics) -> StreamingMergeBuilder<'a>
pub fn with_batch_size(self, batch_size: usize) -> StreamingMergeBuilder<'a>
pub fn with_fetch(self, fetch: Option<usize>) -> StreamingMergeBuilder<'a>
pub fn with_reservation( self, reservation: MemoryReservation, ) -> StreamingMergeBuilder<'a>
Sourcepub fn with_round_robin_tie_breaker(
self,
enable_round_robin_tie_breaker: bool,
) -> StreamingMergeBuilder<'a>
pub fn with_round_robin_tie_breaker( self, enable_round_robin_tie_breaker: bool, ) -> StreamingMergeBuilder<'a>
See SortPreservingMergeExec::with_round_robin_repartition for more information.
pub fn build( self, ) -> Result<Pin<Box<dyn RecordBatchStream<Item = Result<RecordBatch, DataFusionError>> + Send>>, DataFusionError>
Trait Implementations§
Source§impl<'a> Default for StreamingMergeBuilder<'a>
impl<'a> Default for StreamingMergeBuilder<'a>
Source§fn default() -> StreamingMergeBuilder<'a>
fn default() -> StreamingMergeBuilder<'a>
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl<'a> Freeze for StreamingMergeBuilder<'a>
impl<'a> !RefUnwindSafe for StreamingMergeBuilder<'a>
impl<'a> Send for StreamingMergeBuilder<'a>
impl<'a> !Sync for StreamingMergeBuilder<'a>
impl<'a> Unpin for StreamingMergeBuilder<'a>
impl<'a> !UnwindSafe for StreamingMergeBuilder<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more