pub struct BroadcastAutoRule { /* private fields */ }Expand description
Logical optimizer rule that marks small scan nodes as broadcast-eligible.
Scans the logical plan for NodeOp::Scan nodes whose estimated_rows is
set and below the threshold. Such nodes are annotated with
broadcast_eligible = true so the lowering pass promotes their exchange
to Broadcast partitioning.
The threshold is deliberately conservative (1M rows). Without estimated_rows
populated from source metadata (parquet footer, Kafka stats, etc.) the rule
is a no-op.
Implementations§
Trait Implementations§
Source§impl OptimizerRule for BroadcastAutoRule
impl OptimizerRule for BroadcastAutoRule
Auto Trait Implementations§
impl Freeze for BroadcastAutoRule
impl RefUnwindSafe for BroadcastAutoRule
impl Send for BroadcastAutoRule
impl Sync for BroadcastAutoRule
impl Unpin for BroadcastAutoRule
impl UnsafeUnpin for BroadcastAutoRule
impl UnwindSafe for BroadcastAutoRule
Blanket Implementations§
impl<T> Allocation for T
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request