Skip to content

Commit 7fdd69f

Browse files
authored
Merge branch 'main' into append-should-not-conflict
2 parents 338c78a + 979e177 commit 7fdd69f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

90 files changed

+1480
-906
lines changed

.github/workflows/python_build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ jobs:
160160
- uses: actions/setup-java@v2
161161
with:
162162
distribution: "zulu"
163-
java-version: "11"
163+
java-version: "21"
164164

165165
- name: Build and install deltalake
166166
run: make develop-pyspark

Cargo.toml

Lines changed: 18 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -26,34 +26,27 @@ debug = true
2626
debug = "line-tables-only"
2727

2828
[workspace.dependencies]
29-
delta_kernel = { version = "0.11.0", features = ["arrow-55", "internal-api"] }
29+
delta_kernel = { version = "0.12.1", features = ["arrow-55", "internal-api"] }
3030

3131
# arrow
32-
arrow = { version = "=55.0.0" }
33-
arrow-arith = { version = "=55.0.0" }
34-
arrow-array = { version = "=55.0.0", features = ["chrono-tz"] }
35-
arrow-buffer = { version = "=55.0.0" }
36-
arrow-cast = { version = "=55.0.0" }
37-
arrow-ipc = { version = "=55.0.0" }
38-
arrow-json = { version = "=55.0.0" }
39-
arrow-ord = { version = "=55.0.0" }
40-
arrow-row = { version = "=55.0.0" }
41-
arrow-schema = { version = "=55.0.0" }
42-
arrow-select = { version = "=55.0.0" }
32+
arrow = { version = "55.2.0" }
33+
arrow-arith = { version = "55.2.0" }
34+
arrow-array = { version = "55.2.0", features = ["chrono-tz"] }
35+
arrow-buffer = { version = "55.2.0" }
36+
arrow-cast = { version = "55.2.0" }
37+
arrow-ipc = { version = "55.2.0" }
38+
arrow-json = { version = "55.2.0" }
39+
arrow-ord = { version = "55.2.0" }
40+
arrow-row = { version = "55.2.0" }
41+
arrow-schema = { version = "55.2.0" }
42+
arrow-select = { version = "55.2.0" }
4343
object_store = { version = "0.12.1" }
44-
parquet = { version = "=55.0.0" }
44+
parquet = { version = "55.2.0" }
4545

4646
# datafusion
47-
datafusion = "47.0.0"
48-
datafusion-expr = "47.0.0"
49-
datafusion-common = "47.0.0"
50-
datafusion-ffi = "47.0.0"
51-
datafusion-functions = "47.0.0"
52-
datafusion-functions-aggregate = "47.0.0"
53-
datafusion-physical-expr = "47.0.0"
54-
datafusion-physical-plan = "47.0.0"
55-
datafusion-proto = "47.0.0"
56-
datafusion-sql = "47.0.0"
47+
datafusion = "48.0.0"
48+
datafusion-ffi = "48.0.0"
49+
datafusion-proto = "48.0.0"
5750

5851
# serde
5952
serde = { version = "1.0.194", features = ["derive"] }
@@ -93,3 +86,5 @@ Arro = "Arro"
9386
arro3 = "arro3"
9487
Arro3 = "Arro3"
9588
AKS = "AKS"
89+
# to avoid using 'type' as a field name.
90+
tpe = "tpe"

crates/aws/Cargo.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,13 @@ aws-config = { version = "1.5", default-features = false, features = [
3838
"credentials-process",
3939
"sso",
4040
] }
41-
aws-sdk-dynamodb = { version = "1.45", default-features = false, features = [
41+
aws-sdk-sso = { version = "=1.72.0"}
42+
aws-sdk-ssooidc = { version = "=1.73.0"}
43+
aws-sdk-dynamodb = { version = "=1.79.0", default-features = false, features = [
4244
"behavior-version-latest",
4345
"rt-tokio",
4446
] }
45-
aws-sdk-sts = { version = "1.42", default-features = false, features = [
47+
aws-sdk-sts = { version = "=1.73.0", default-features = false, features = [
4648
"behavior-version-latest",
4749
"rt-tokio",
4850
] }

crates/azure/tests/integration.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ async fn read_write_test_onelake(context: &IntegrationContext, path: &Path) -> T
9797
#[serial]
9898
fn list_delta_tables_using_listing_provider_with_missing_account_name() -> TestResult {
9999
let context = IntegrationContext::new(Box::new(MsftIntegration::default()))?;
100-
// Removing the the envs set by the `IntegrationContext (az_cli::prepare_env())` to illustrate the issue if e.g. account_name is not set from custom `storage_options`, but still preserving the use of the `IntegrationContext`
100+
// Removing the envs set by the `IntegrationContext (az_cli::prepare_env())` to illustrate the issue if e.g. account_name is not set from custom `storage_options`, but still preserving the use of the `IntegrationContext`
101101
std::env::remove_var("AZURE_STORAGE_USE_EMULATOR");
102102
std::env::remove_var("AZURE_STORAGE_ACCOUNT_NAME");
103103
std::env::remove_var("AZURE_STORAGE_TOKEN");
@@ -116,7 +116,7 @@ fn list_delta_tables_using_listing_provider_with_missing_account_name() -> TestR
116116
#[serial]
117117
async fn list_delta_tables_using_listing_provider_with_account_name() -> TestResult {
118118
let context = IntegrationContext::new(Box::new(MsftIntegration::default()))?;
119-
// Removing the the envs set by the `IntegrationContext (az_cli::prepare_env())` to illustrate the issue if e.g. account_name is not set from custom `storage_options`, but still preserving the use of the `IntegrationContext`
119+
// Removing the envs set by the `IntegrationContext (az_cli::prepare_env())` to illustrate the issue if e.g. account_name is not set from custom `storage_options`, but still preserving the use of the `IntegrationContext`
120120
std::env::remove_var("AZURE_STORAGE_USE_EMULATOR");
121121
std::env::remove_var("AZURE_STORAGE_ACCOUNT_NAME");
122122
std::env::remove_var("AZURE_STORAGE_TOKEN");

crates/benchmarks/Cargo.toml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,6 @@ serde_json = { workspace = true }
3434

3535
# datafusion
3636
datafusion = { workspace = true }
37-
datafusion-expr = { workspace = true }
38-
datafusion-common = { workspace = true }
39-
datafusion-proto = { workspace = true }
40-
datafusion-sql = { workspace = true }
41-
datafusion-physical-expr = { workspace = true }
4237

4338
[dependencies.deltalake-core]
4439
path = "../core"

crates/benchmarks/src/bin/merge.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@ use arrow::datatypes::Schema as ArrowSchema;
77
use arrow_array::{RecordBatch, StringArray, UInt32Array};
88
use chrono::Duration;
99
use clap::{command, Args, Parser, Subcommand};
10+
use datafusion::common::DataFusionError;
1011
use datafusion::functions::expr_fn::random;
12+
use datafusion::logical_expr::{cast, col, lit};
1113
use datafusion::{datasource::MemTable, prelude::DataFrame};
12-
use datafusion_common::DataFusionError;
13-
use datafusion_expr::{cast, col, lit};
1414
use deltalake_core::protocol::SaveMode;
1515
use deltalake_core::{
1616
arrow::{
@@ -223,7 +223,7 @@ async fn benchmark_merge_tpcds(
223223

224224
let row_sample = ctx.table("t1").await?.join(
225225
ctx.table("file_sample").await?,
226-
datafusion_common::JoinType::Inner,
226+
datafusion::common::JoinType::Inner,
227227
&["file_path"],
228228
&["file"],
229229
None,
@@ -619,7 +619,7 @@ async fn main() {
619619
before_stats
620620
.join(
621621
after_stats,
622-
datafusion_common::JoinType::Inner,
622+
datafusion::common::JoinType::Inner,
623623
&["before_name"],
624624
&["after_name"],
625625
None,

crates/catalog-glue/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ rust-version.workspace = true
1414
[dependencies]
1515
async-trait = { workspace = true }
1616
aws-config = "1"
17-
aws-sdk-glue = "1"
17+
aws-sdk-glue = "=1.78.0"
1818
deltalake-core = { version = "0.26.0", path = "../core" }
1919
thiserror = { workspace = true }
2020

crates/catalog-unity/Cargo.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ reqwest-middleware = { version = "0.4.0", features = ["json"] }
3030
rand = "0.8"
3131
dashmap = "6"
3232
datafusion = { workspace = true, optional = true }
33-
datafusion-common = { workspace = true, optional = true }
3433
moka = { version = "0.12", optional = true, features = ["future"] }
3534

3635
[dev-dependencies]
@@ -45,7 +44,7 @@ aws = ["deltalake-aws"]
4544
azure = ["deltalake-azure"]
4645
gcp = ["deltalake-gcp"]
4746
r2 = ["deltalake-aws"]
48-
datafusion = ["dep:datafusion", "datafusion-common", "deltalake-core/datafusion", "moka"]
47+
datafusion = ["dep:datafusion", "deltalake-core/datafusion", "moka"]
4948

5049
[[example]]
5150
name = "uc_example"

crates/catalog-unity/src/datafusion.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ use chrono::prelude::*;
44
use dashmap::DashMap;
55
use datafusion::catalog::SchemaProvider;
66
use datafusion::catalog::{CatalogProvider, CatalogProviderList};
7+
use datafusion::common::DataFusionError;
78
use datafusion::datasource::TableProvider;
8-
use datafusion_common::DataFusionError;
99
use futures::FutureExt;
1010
use moka::future::Cache;
1111
use moka::Expiry;
@@ -204,7 +204,10 @@ impl SchemaProvider for UnitySchemaProvider {
204204
self.table_names.clone()
205205
}
206206

207-
async fn table(&self, name: &str) -> datafusion_common::Result<Option<Arc<dyn TableProvider>>> {
207+
async fn table(
208+
&self,
209+
name: &str,
210+
) -> datafusion::common::Result<Option<Arc<dyn TableProvider>>> {
208211
let maybe_table = self
209212
.client
210213
.get_table(&self.catalog_name, &self.schema_name, name)

crates/catalog-unity/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ pub enum UnityCatalogError {
109109

110110
#[cfg(feature = "datafusion")]
111111
#[error("Datafusion error: {0}")]
112-
DatafusionError(#[from] datafusion_common::DataFusionError),
112+
DatafusionError(#[from] ::datafusion::common::DataFusionError),
113113

114114
/// Cannot initialize DynamoDbConfiguration due to some sort of threading issue
115115
#[error("Unable to initialize Unity Catalog, potentially a threading issue")]

0 commit comments

Comments
 (0)