ARROW-12361: [Rust] [DataFusion] Allow users to override physical optimization rules
Closes #10013 from andygrove/df-replace-phys-opt-rules
Authored-by: Andy Grove <andygrove73@gmail.com>
Signed-off-by: Andrew Lamb <andrew@nerdnetworks.org>
diff --git a/rust/datafusion/src/execution/context.rs b/rust/datafusion/src/execution/context.rs
index 07d5b62..833d7b6 100644
--- a/rust/datafusion/src/execution/context.rs
+++ b/rust/datafusion/src/execution/context.rs
@@ -680,6 +680,15 @@
self
}
+ /// Replace the physical optimizer rules
+ pub fn with_physical_optimizer_rules(
+ mut self,
+ physical_optimizers: Vec<Arc<dyn PhysicalOptimizerRule + Send + Sync>>,
+ ) -> Self {
+ self.physical_optimizers = physical_optimizers;
+ self
+ }
+
/// Adds a new [`OptimizerRule`]
pub fn add_optimizer_rule(
mut self,