pub struct BudgetedMaterializedExecutor { /* private fields */ }Expand description
Physical plan executor. Bounded materializing collector for callers that explicitly opt into a resource limit.
This collector only takes ownership of a batch after its retained output reservation has succeeded. Source readers and operators must reserve their own allocations before creating a batch; the streaming executor introduced later supplies that contract at those boundaries.
Implementations§
Source§impl BudgetedMaterializedExecutor
impl BudgetedMaterializedExecutor
Sourcepub fn new(budget: ResourceBudget) -> Self
pub fn new(budget: ResourceBudget) -> Self
Construct a collector using the supplied shared resource budget.
Sourcepub fn collect_batches<I>(&self, batches: I) -> Result<DataFrame>
pub fn collect_batches<I>(&self, batches: I) -> Result<DataFrame>
Materialize already-produced batches without exceeding the retained-output reservation.
The returned DataFrame transfers batch ownership to the caller, so this collector’s
reservations are released before returning. An error drops all retained batches and their
reservations.
Sourcepub fn collect_stream(&self, stream: &mut DataFrameStream) -> Result<DataFrame>
pub fn collect_stream(&self, stream: &mut DataFrameStream) -> Result<DataFrame>
Drain an already-bounded stream while reserving each result batch before retaining it.
Source and operator allocations are owned by DataFrameStream; this collector adds only
the materialized-result ownership needed for an explicit bounded collect. A reservation
failure closes the stream so the source handle and all transient reservations are released.
Sourcepub fn budget(&self) -> &ResourceBudget
pub fn budget(&self) -> &ResourceBudget
Return the shared budget used by this collector.
Trait Implementations§
Source§impl Clone for BudgetedMaterializedExecutor
impl Clone for BudgetedMaterializedExecutor
Source§fn clone(&self) -> BudgetedMaterializedExecutor
fn clone(&self) -> BudgetedMaterializedExecutor
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more