pub struct LocalModeOptimizer { /* private fields */ }Expand description
Physical optimizer rule for local mode liquid cache
This optimizer rewrites DataSourceExec nodes that read Parquet files to use LiquidParquetSource instead of the default ParquetSource
Implementations§
Source§impl LocalModeOptimizer
impl LocalModeOptimizer
Sourcepub fn new(cache: LiquidCacheParquetRef, eager_shredding: bool) -> Self
pub fn new(cache: LiquidCacheParquetRef, eager_shredding: bool) -> Self
Create an optimizer with an existing cache instance
Sourcepub fn with_cache(cache: LiquidCacheParquetRef) -> Self
pub fn with_cache(cache: LiquidCacheParquetRef) -> Self
Create an optimizer with an existing cache instance
Trait Implementations§
Source§impl Debug for LocalModeOptimizer
impl Debug for LocalModeOptimizer
Source§impl PhysicalOptimizerRule for LocalModeOptimizer
impl PhysicalOptimizerRule for LocalModeOptimizer
Source§fn optimize(
&self,
plan: Arc<dyn ExecutionPlan>,
_config: &ConfigOptions,
) -> Result<Arc<dyn ExecutionPlan>, DataFusionError>
fn optimize( &self, plan: Arc<dyn ExecutionPlan>, _config: &ConfigOptions, ) -> Result<Arc<dyn ExecutionPlan>, DataFusionError>
Rewrite
plan to an optimized formSource§fn schema_check(&self) -> bool
fn schema_check(&self) -> bool
A flag to indicate whether the physical planner should validate that the rule will not
change the schema of the plan after the rewriting.
Some of the optimization rules might change the nullable properties of the schema
and should disable the schema check.
Auto Trait Implementations§
impl Freeze for LocalModeOptimizer
impl !RefUnwindSafe for LocalModeOptimizer
impl Send for LocalModeOptimizer
impl Sync for LocalModeOptimizer
impl Unpin for LocalModeOptimizer
impl UnsafeUnpin for LocalModeOptimizer
impl !UnwindSafe for LocalModeOptimizer
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
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