Skip to content

Commit 84c72b4

Browse files
Implement proper support for datatypes
1 parent 3e14f83 commit 84c72b4

File tree

9 files changed

+1616
-461
lines changed

9 files changed

+1616
-461
lines changed

Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ clap = { version = "4.5.42", default-features = false }
3535
config = { version = "0.14", default-features = false }
3636
const-oid = { version = "0.9.6", default-features = false }
3737
constant_time_eq = { version = "0.4.2" }
38+
delta_kernel = { version = "0.13.0", default-features = false, features = ["arrow-conversion"] }
3839
deltalake = { version = "0.27.0", default-features = false, features = ["rustls", "datafusion", "s3"] }
3940
fail = { version = "0.5.1", default-features = false }
4041
futures = { version = "0.3.31", default-features = false }

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,4 +104,3 @@ Apache‑2.0. See `LICENSE` for details.
104104
<p align="center">
105105
Made with ❤️ by the <a href="https://supabase.com">Supabase</a> team
106106
</p>
107-

etl-destinations/Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,14 @@ bigquery = [
1313
"dep:tokio",
1414
]
1515
iceberg = ["dep:iceberg", "dep:iceberg-catalog-rest"]
16-
deltalake = ["dep:deltalake", "dep:tokio", "dep:tracing"]
16+
deltalake = ["dep:deltalake", "dep:delta_kernel", "dep:tokio", "dep:tracing"]
1717

1818
[dependencies]
1919
etl = { workspace = true }
2020
etl-postgres = { workspace = true }
2121
chrono = { workspace = true }
2222

23+
delta_kernel = { workspace = true, optional = true, features = ["arrow-conversion"] }
2324
deltalake = { workspace = true, optional = true, features = ["rustls", "datafusion"] }
2425
futures = { workspace = true, optional = true }
2526
gcp-bigquery-client = { workspace = true, optional = true, features = [

etl-destinations/src/delta/client.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,10 @@ impl DeltaLakeClient {
6969

7070
/// Open a Delta table at `table_uri`.
7171
pub async fn open_table(&self, table_uri: &str) -> DeltaResult<Arc<DeltaTable>> {
72-
let table = open_table(table_uri).await?;
72+
let table = self
73+
.get_table_with_storage_options(table_uri)?
74+
.load()
75+
.await?;
7376
Ok(Arc::new(table))
7477
}
7578

etl-destinations/src/delta/encoding.rs

Lines changed: 0 additions & 322 deletions
This file was deleted.

etl-destinations/src/delta/mod.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
mod client;
22
mod core;
3-
mod encoding;
43
mod schema;
54

65
pub use client::DeltaLakeClient;
76
pub use core::{DeltaDestinationConfig, DeltaLakeDestination};
8-
pub use encoding::TableRowEncoder;
7+
pub use schema::TableRowEncoder;

0 commit comments

Comments
 (0)