pub struct FragmentControl {
pub control: ExecutionControl,
pub max_spill_bytes: u64,
}Expand description
Cooperative per-fragment execution control: cancellation/deadline shared
with the query’s ExecutionControl hierarchy plus the fragment’s spill
allowance.
Fields§
§control: ExecutionControlCooperative cancellation handle (child of the query control, so a registry cancel fans out to every fragment).
max_spill_bytes: u64Maximum spill allowance stamped by the planner (spec section 12.10).
Implementations§
Source§impl FragmentControl
impl FragmentControl
Sourcepub fn begin_spill(
&self,
manager: &SpillManager,
query_id: QueryId,
) -> Result<SpillSession, SpillError>
pub fn begin_spill( &self, manager: &SpillManager, query_id: QueryId, ) -> Result<SpillSession, SpillError>
Open a core spill session for this fragment against manager, capped
at Self::max_spill_bytes. Query operators that sort/join/aggregate
under pressure call this instead of inventing a second spill path.
Trait Implementations§
Source§impl Clone for FragmentControl
impl Clone for FragmentControl
Source§fn clone(&self) -> FragmentControl
fn clone(&self) -> FragmentControl
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for FragmentControl
impl !UnwindSafe for FragmentControl
impl Freeze for FragmentControl
impl Send for FragmentControl
impl Sync for FragmentControl
impl Unpin for FragmentControl
impl UnsafeUnpin for FragmentControl
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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