alamb commented on code in PR #22415:
URL: https://github.com/apache/datafusion/pull/22415#discussion_r3281217269


##########
docs/source/library-user-guide/upgrading/54.0.0.md:
##########
@@ -171,7 +171,9 @@ where string types are preferred (`UNION`, `CASE 
THEN/ELSE`, `NVL2`).
 
 ### `ExecutionPlan::apply_expressions` is now a required method
 
-`apply_expressions` has been added as a **required** method on the 
`ExecutionPlan` trait (no default implementation). The same applies to the 
`FileSource` and `DataSource` traits. Any custom implementation of these traits 
must now implement `apply_expressions`.
+`apply_expressions` is now **required** on the `ExecutionPlan`, `FileSource`,
+and `DataSource` traits. It visits every `PhysicalExpr` owned by the node so
+callers can analyze or rewrite them (e.g. to discover dynamic filters).

Review Comment:
   I think it would be very helpful if we can explain to an end user **when** 
they should include their nodes expressions in `apply_expressions` (or 
alternately when it is safe to NOT include expressions)
   
   I double checked the docs on apply_expressions and it implies to me (though 
does not explicitly say) that all the expressions in a node should be included. 
   
   
https://github.com/apache/datafusion/blob/dd8760d5a958d1b58b969d22ae634f98d51caef9/datafusion/physical-plan/src/execution_plan.rs#L205-L217



-- 
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]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to