From 443490939f5259fad428dde0545b35e5fe7e72aa Mon Sep 17 00:00:00 2001 From: Xuanwo Date: Wed, 14 Aug 2024 22:10:49 +0800 Subject: [PATCH] chore: Bump datafusion to 41 (#548) Signed-off-by: Xuanwo --- crates/integrations/datafusion/Cargo.toml | 2 +- crates/integrations/datafusion/src/catalog.rs | 3 +-- crates/integrations/datafusion/src/physical_plan/scan.rs | 4 ++++ crates/integrations/datafusion/src/schema.rs | 2 +- crates/integrations/datafusion/src/table.rs | 4 ++-- 5 files changed, 9 insertions(+), 6 deletions(-) diff --git a/crates/integrations/datafusion/Cargo.toml b/crates/integrations/datafusion/Cargo.toml index 7e12d73e8..8e036a6ad 100644 --- a/crates/integrations/datafusion/Cargo.toml +++ b/crates/integrations/datafusion/Cargo.toml @@ -31,7 +31,7 @@ keywords = ["iceberg", "integrations", "datafusion"] [dependencies] anyhow = { workspace = true } async-trait = { workspace = true } -datafusion = { version = "39.0.0" } +datafusion = { version = "41.0.0" } futures = { workspace = true } iceberg = { workspace = true } log = { workspace = true } diff --git a/crates/integrations/datafusion/src/catalog.rs b/crates/integrations/datafusion/src/catalog.rs index 44ede99c3..ab6ebdccc 100644 --- a/crates/integrations/datafusion/src/catalog.rs +++ b/crates/integrations/datafusion/src/catalog.rs @@ -19,8 +19,7 @@ use std::any::Any; use std::collections::HashMap; use std::sync::Arc; -use datafusion::catalog::schema::SchemaProvider; -use datafusion::catalog::CatalogProvider; +use datafusion::catalog::{CatalogProvider, SchemaProvider}; use futures::future::try_join_all; use iceberg::{Catalog, NamespaceIdent, Result}; diff --git a/crates/integrations/datafusion/src/physical_plan/scan.rs b/crates/integrations/datafusion/src/physical_plan/scan.rs index aca40c4b1..c50b32efb 100644 --- a/crates/integrations/datafusion/src/physical_plan/scan.rs +++ b/crates/integrations/datafusion/src/physical_plan/scan.rs @@ -72,6 +72,10 @@ impl IcebergTableScan { } impl ExecutionPlan for IcebergTableScan { + fn name(&self) -> &str { + "IcebergTableScan" + } + fn as_any(&self) -> &dyn Any { self } diff --git a/crates/integrations/datafusion/src/schema.rs b/crates/integrations/datafusion/src/schema.rs index 0d7fcbf59..8133b3746 100644 --- a/crates/integrations/datafusion/src/schema.rs +++ b/crates/integrations/datafusion/src/schema.rs @@ -20,7 +20,7 @@ use std::collections::HashMap; use std::sync::Arc; use async_trait::async_trait; -use datafusion::catalog::schema::SchemaProvider; +use datafusion::catalog::SchemaProvider; use datafusion::datasource::TableProvider; use datafusion::error::Result as DFResult; use futures::future::try_join_all; diff --git a/crates/integrations/datafusion/src/table.rs b/crates/integrations/datafusion/src/table.rs index da38ccc6f..7ff7b2211 100644 --- a/crates/integrations/datafusion/src/table.rs +++ b/crates/integrations/datafusion/src/table.rs @@ -20,9 +20,9 @@ use std::sync::Arc; use async_trait::async_trait; use datafusion::arrow::datatypes::SchemaRef as ArrowSchemaRef; +use datafusion::catalog::Session; use datafusion::datasource::{TableProvider, TableType}; use datafusion::error::Result as DFResult; -use datafusion::execution::context; use datafusion::logical_expr::Expr; use datafusion::physical_plan::ExecutionPlan; use iceberg::arrow::schema_to_arrow_schema; @@ -74,7 +74,7 @@ impl TableProvider for IcebergTableProvider { async fn scan( &self, - _state: &context::SessionState, + _state: &dyn Session, _projection: Option<&Vec>, _filters: &[Expr], _limit: Option,