Skip to content

Commit 8bf91cc

Browse files
committed
Fix file operations on deltalake with object_store
1 parent bac2757 commit 8bf91cc

2 files changed

Lines changed: 5 additions & 8 deletions

File tree

crates/modelardb_server/src/storage/data_transfer.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ use dashmap::DashMap;
2424
use deltalake::arrow::array::RecordBatch;
2525
use futures::TryStreamExt;
2626
use modelardb_storage::data_folder::DataFolder;
27-
use object_store::path::Path;
2827
use tokio::sync::RwLock;
2928
use tokio::task::JoinHandle as TaskJoinHandle;
3029
use tracing::debug;
@@ -73,8 +72,7 @@ impl DataTransfer {
7372
let mut table_size_in_bytes = table_size_in_bytes.entry(table_name).or_insert(0);
7473

7574
let object_store = delta_table.object_store();
76-
for file_uri in delta_table.get_file_uris()? {
77-
let file_path = Path::parse(file_uri)?;
75+
for file_path in delta_table.get_files_by_partitions(&[]).await? {
7876
let object_meta = object_store.head(&file_path).await?;
7977
*table_size_in_bytes += object_meta.size;
8078
}
@@ -276,10 +274,11 @@ impl DataTransfer {
276274
mod tests {
277275
use super::*;
278276

277+
use deltalake::ObjectStore;
279278
use modelardb_test::table::{self, NORMAL_TABLE_NAME, TIME_SERIES_TABLE_NAME};
280279
use tempfile::{self, TempDir};
281280

282-
const EXPECTED_TIME_SERIES_TABLE_FILE_SIZE: u64 = 2038;
281+
const EXPECTED_TIME_SERIES_TABLE_FILE_SIZE: u64 = 2128;
283282

284283
// Tests for data transfer component.
285284
#[tokio::test]
@@ -532,8 +531,7 @@ mod tests {
532531
let delta_table = local_data_folder.delta_table(table_name).await.unwrap();
533532

534533
let mut files_size = 0;
535-
for file_uri in delta_table.get_file_uris().unwrap() {
536-
let file_path = Path::parse(file_uri).unwrap();
534+
for file_path in delta_table.get_files_by_partitions(&[]).await.unwrap() {
537535
let object_meta = delta_table.object_store().head(&file_path).await;
538536
files_size += object_meta.unwrap().size;
539537
}

crates/modelardb_storage/src/data_folder.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ use datafusion::parquet::file::properties::WriterProperties;
3535
use datafusion::parquet::format::SortingColumn;
3636
use datafusion::prelude::{SessionContext, col};
3737
use datafusion_proto::bytes::Serializeable;
38-
use deltalake::table::builder::ensure_table_uri;
3938
use delta_kernel::engine::arrow_conversion::TryIntoKernel;
4039
use delta_kernel::table_properties::DataSkippingNumIndexedCols;
4140
use deltalake::delta_datafusion::DeltaDataChecker;
@@ -423,7 +422,7 @@ impl DataFolder {
423422
Ok(delta_table.clone())
424423
} else {
425424
// If the table is not in the cache, open it and add it to the cache before returning.
426-
let table_url = ensure_table_uri(table_path)?;
425+
let table_url = deltalake::ensure_table_uri(table_path)?;
427426
let delta_table = deltalake::open_table_with_storage_options(
428427
table_url,
429428
self.storage_options.clone(),

0 commit comments

Comments
 (0)