@@ -12,12 +12,9 @@ use analyzer::{collect_known_rewrites, RewriteTableScanAnalyzer};
1212use ast_analyzer:: RewriteMultiTableReference ;
1313use async_trait:: async_trait;
1414use datafusion:: {
15- common:: DFSchema ,
1615 arrow:: datatypes:: { Schema , SchemaRef } ,
17- common:: {
18- tree_node:: TreeNode ,
19- Statistics ,
20- } ,
16+ common:: DFSchema ,
17+ common:: { tree_node:: TreeNode , Statistics } ,
2118 config:: ConfigOptions ,
2219 error:: { DataFusionError , Result } ,
2320 execution:: { context:: SessionState , TaskContext } ,
@@ -37,11 +34,11 @@ use datafusion::{
3734} ;
3835use optimizer:: { OptimizeProjectionsFederation , PushDownFilterFederation } ;
3936
37+ pub use ast_analyzer:: { AstAnalyzer , AstAnalyzerRule } ;
4038pub use executor:: { LogicalOptimizer , SQLExecutor , SQLExecutorRef , SqlQueryRewriter } ;
4139pub use schema:: { MultiSchemaProvider , SQLSchemaProvider } ;
4240pub use table:: { RemoteTable , SQLTable , SQLTableSource } ;
4341pub use table_reference:: { MultiPartTableReference , RemoteTableRef } ;
44- pub use ast_analyzer:: { AstAnalyzer , AstAnalyzerRule } ;
4542
4643use crate :: {
4744 get_table_source, schema_cast, FederatedPlanNode , FederationAnalyzerForLogicalPlan ,
@@ -61,7 +58,7 @@ pub fn federation_analyzer_rule() -> FederationAnalyzerRule {
6158#[ derive( Debug ) ]
6259pub struct SQLFederationProvider {
6360 analyzer : Arc < Analyzer > ,
64- pub executor : Arc < dyn SQLExecutor > ,
61+ pub ( crate ) executor : Arc < dyn SQLExecutor > ,
6562}
6663
6764impl SQLFederationProvider {
@@ -73,6 +70,10 @@ impl SQLFederationProvider {
7370 executor,
7471 }
7572 }
73+
74+ pub fn executor ( & self ) -> & Arc < dyn SQLExecutor > {
75+ & self . executor
76+ }
7677}
7778
7879impl FederationProvider for SQLFederationProvider {
@@ -134,13 +135,17 @@ impl AnalyzerRule for SQLFederationAnalyzerRule {
134135
135136#[ derive( Debug ) ]
136137pub struct SQLFederationPlanner {
137- pub executor : Arc < dyn SQLExecutor > ,
138+ pub ( crate ) executor : Arc < dyn SQLExecutor > ,
138139}
139140
140141impl SQLFederationPlanner {
141142 pub fn new ( executor : Arc < dyn SQLExecutor > ) -> Self {
142143 Self { executor }
143144 }
145+
146+ pub fn executor ( & self ) -> & Arc < dyn SQLExecutor > {
147+ & self . executor
148+ }
144149}
145150
146151#[ async_trait]
@@ -323,11 +328,11 @@ impl DisplayAs for VirtualExecutionPlan {
323328 write ! ( f, " base_sql={statement}" ) ?;
324329 }
325330
326- let ( logical_optimizers, ast_analyzers, _sql_query_rewriters) = match gather_analyzers ( & plan )
327- {
328- Ok ( analyzers) => analyzers,
329- Err ( _) => return Ok ( ( ) ) ,
330- } ;
331+ let ( logical_optimizers, ast_analyzers, _sql_query_rewriters) =
332+ match gather_analyzers ( & plan ) {
333+ Ok ( analyzers) => analyzers,
334+ Err ( _) => return Ok ( ( ) ) ,
335+ } ;
331336
332337 let old_plan = plan. clone ( ) ;
333338
@@ -471,9 +476,7 @@ mod tests {
471476 use datafusion:: prelude:: Expr ;
472477 use datafusion:: sql:: unparser:: dialect:: Dialect ;
473478 use datafusion:: sql:: unparser:: { self } ;
474- use datafusion:: sql:: TableReference ;
475479 use datafusion:: {
476- common:: DFSchema ,
477480 arrow:: datatypes:: { DataType , Field } ,
478481 datasource:: TableProvider ,
479482 execution:: context:: SessionContext ,
0 commit comments