Skip to content

Commit 6b2398a

Browse files
committed
Add PhysicalExpr optimizer and cast unwrapping
1 parent b4ba1c6 commit 6b2398a

File tree

11 files changed

+2068
-818
lines changed

11 files changed

+2068
-818
lines changed

Cargo.lock

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

datafusion/datasource-parquet/src/opener.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ use arrow::datatypes::{FieldRef, SchemaRef, TimeUnit};
3333
use arrow::error::ArrowError;
3434
use datafusion_common::{exec_err, DataFusionError, Result};
3535
use datafusion_datasource::PartitionedFile;
36+
use datafusion_physical_expr::simplifier::PhysicalExprSimplifier;
3637
use datafusion_physical_expr::PhysicalExprSchemaRewriter;
3738
use datafusion_physical_expr_common::physical_expr::{
3839
is_dynamic_physical_expr, PhysicalExpr,
@@ -233,7 +234,13 @@ impl FileOpener for ParquetOpener {
233234
)
234235
.rewrite(p)
235236
.map_err(ArrowError::from)
237+
.map(|p| {
238+
PhysicalExprSimplifier::new(&physical_file_schema)
239+
.simplify(p)
240+
.map_err(ArrowError::from)
241+
})
236242
})
243+
.transpose()?
237244
.transpose()?;
238245

239246
// Build predicates for this specific file

0 commit comments

Comments
 (0)