From a39cc02e9cb3d093ce7c8a6f15b5a0c871da4e45 Mon Sep 17 00:00:00 2001 From: Siew Kam Onn Date: Fri, 31 Jan 2025 12:07:57 +0800 Subject: [PATCH] add error handling and logging for metadata loading in ParquetOpener --- .../src/datasource/physical_plan/parquet/opener.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/datafusion/core/src/datasource/physical_plan/parquet/opener.rs b/datafusion/core/src/datasource/physical_plan/parquet/opener.rs index 446e1f450e6b..43c6a443c156 100644 --- a/datafusion/core/src/datasource/physical_plan/parquet/opener.rs +++ b/datafusion/core/src/datasource/physical_plan/parquet/opener.rs @@ -124,12 +124,21 @@ impl FileOpener for ParquetOpener { println!("==> about to return from ParquetOpener::open"); Ok(Box::pin(async move { + println!("==> enable_page_index: {}", enable_page_index); let options = ArrowReaderOptions::new().with_page_index(enable_page_index); let mut metadata_timer = file_metrics.metadata_load_time.timer(); println!("==> Starting metadata loading"); let metadata = - ArrowReaderMetadata::load_async(&mut reader, options.clone()).await?; + match ArrowReaderMetadata::load_async(&mut reader, options.clone()).await + { + Ok(metadata) => metadata, + Err(e) => { + println!("==> Error loading metadata: {}", e); + return Err(e.into()); + } + }; + println!("==> Loaded metadata: {:?}", metadata); println!("==> Metadata loaded successfully"); let mut schema = Arc::clone(metadata.schema());