alamb commented on code in PR #3370:
URL: https://github.com/apache/arrow-datafusion/pull/3370#discussion_r964739878
##########
datafusion/physical-expr/src/expressions/negative.rs:
##########
@@ -118,13 +118,11 @@ pub fn negative(
arg: Arc<dyn PhysicalExpr>,
input_schema: &Schema,
) -> Result<Arc<dyn PhysicalExpr>> {
+ // TODO: the data type checker should be done in the logical plan phase
Review Comment:
> If the phy expr can be created directly without the type coercion or type
checker in the logical phase, we need this checker in the creation of physical
expr.
That is a good point.
Maybe the larger question is if we are ok requiring that the logical
optimizer passes are run on `LogicalPlan`s and `Expr` to successfully create
`ExecutionPlan`s and `PhysicalExpr`s,
Now that I type that it seems there is value in supporting creating `Exprs`
and then PhysicalExprs directly (as part of implementing extensions, for
example) 🤔 So maybe we should just ensure it is possible to call the coercion
logic directly on a `Expr`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]