This is an automated email from the ASF dual-hosted git repository.
alamb pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/datafusion.git
The following commit(s) were added to refs/heads/main by this push:
new 948949eee5 test: support run filter_pushdown on windows machine
(#13610)
948949eee5 is described below
commit 948949eee5e0183ceeadb228b8cc64a5541726fb
Author: zhuliquan <[email protected]>
AuthorDate: Thu Dec 5 11:58:19 2024 +0800
test: support run filter_pushdown on windows machine (#13610)
* test: support run filter_pushdown on windows
* minor: remove useless comment for filter_pushdown
---
datafusion/core/src/test_util/parquet.rs | 12 +++++++++++-
datafusion/core/tests/parquet/filter_pushdown.rs | 6 ++++--
datafusion/core/tests/parquet/mod.rs | 1 -
3 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/datafusion/core/src/test_util/parquet.rs
b/datafusion/core/src/test_util/parquet.rs
index fc6b4ad9d0..685ed14777 100644
--- a/datafusion/core/src/test_util/parquet.rs
+++ b/datafusion/core/src/test_util/parquet.rs
@@ -103,7 +103,17 @@ impl TestParquetFile {
let size = std::fs::metadata(&path)?.len() as usize;
- let canonical_path = path.canonicalize()?;
+ let mut canonical_path = path.canonicalize()?;
+
+ if cfg!(target_os = "windows") {
+ canonical_path = canonical_path
+ .to_str()
+ .unwrap()
+ .replace("\\", "/")
+ .strip_prefix("//?/")
+ .unwrap()
+ .into();
+ };
let object_store_url =
ListingTableUrl::parse(canonical_path.to_str().unwrap_or_default())?
diff --git a/datafusion/core/tests/parquet/filter_pushdown.rs
b/datafusion/core/tests/parquet/filter_pushdown.rs
index 8def192f93..02fb597404 100644
--- a/datafusion/core/tests/parquet/filter_pushdown.rs
+++ b/datafusion/core/tests/parquet/filter_pushdown.rs
@@ -26,6 +26,8 @@
//! select * from data limit 10;
//! ```
+use std::path::Path;
+
use arrow::compute::concat_batches;
use arrow::record_batch::RecordBatch;
use datafusion::physical_plan::collect;
@@ -67,7 +69,7 @@ fn generate_file(tempdir: &TempDir, props: WriterProperties)
-> TestParquetFile
async fn single_file() {
// Only create the parquet file once as it is fairly large
- let tempdir = TempDir::new().unwrap();
+ let tempdir = TempDir::new_in(Path::new(".")).unwrap();
// Set row group size smaller so can test with fewer rows
let props = WriterProperties::builder()
.set_max_row_group_size(1024)
@@ -223,7 +225,7 @@ async fn single_file() {
#[tokio::test]
async fn single_file_small_data_pages() {
- let tempdir = TempDir::new().unwrap();
+ let tempdir = TempDir::new_in(Path::new(".")).unwrap();
// Set low row count limit to improve page filtering
let props = WriterProperties::builder()
diff --git a/datafusion/core/tests/parquet/mod.rs
b/datafusion/core/tests/parquet/mod.rs
index 3f68222a2c..46be243311 100644
--- a/datafusion/core/tests/parquet/mod.rs
+++ b/datafusion/core/tests/parquet/mod.rs
@@ -45,7 +45,6 @@ use tempfile::NamedTempFile;
mod custom_reader;
mod external_access_plan;
mod file_statistics;
-#[cfg(not(target_family = "windows"))]
mod filter_pushdown;
mod page_pruning;
mod row_group_pruning;
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]