@@ -3,9 +3,6 @@ mod validation;
33
44use anyhow:: { anyhow, Result } ;
55use bench:: { Benchmark , Query } ;
6- use datafusion:: catalog:: TableProvider ;
7- use datafusion_federation:: sql:: { SQLFederationProvider , SQLTableSource } ;
8- use datafusion_federation:: FederatedTableProviderAdaptor ;
96use std:: path:: { Path , PathBuf } ;
107use std:: sync:: Arc ;
118
@@ -82,7 +79,7 @@ fn get_duckdb_table_factory(db_name: String) -> Result<DuckDBTableFactory> {
8279 . map_err ( |e| anyhow ! ( "Failed to create DuckDB connection pool: {}" , e) ) ?,
8380 ) ;
8481
85- Ok ( DuckDBTableFactory :: new ( duckdb_pool) )
82+ Ok ( DuckDBTableFactory :: new ( duckdb_pool)
8683}
8784
8885#[ tokio:: main]
@@ -152,16 +149,13 @@ async fn register_federated_duckdb_tables(
152149 duckdb_table_factory : & DuckDBTableFactory ,
153150) -> Result < ( ) > {
154151 for table_name in table_names {
155- let tbl: Arc < dyn TableProvider > = Arc :: new (
152+ ctx. register_table (
153+ & table_name,
156154 duckdb_table_factory
157- . table_provider_fed ( TableReference :: bare ( table_name. as_str ( ) ) )
155+ . table_provider ( TableReference :: bare ( table_name. as_str ( ) ) )
158156 . await
159157 . map_err ( |e| anyhow ! ( "Failed to register duckdb table: {}" , e) ) ?,
160- ) ;
161- tbl. as_any ( )
162- . downcast_ref :: < FederatedTableProviderAdaptor > ( )
163- . expect ( "was not 'FederatedTableProviderAdaptor" ) ;
164- ctx. register_table ( & table_name, tbl) ?;
158+ ) ?;
165159 }
166160
167161 Ok ( ( ) )
0 commit comments