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


##########
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:
   Should we add a small note that a no-op implementation can cause silent 
bugs? Something like: "Returning `Continue` without calling f is only safe when 
the node owns no `PhysicalExprs` -- otherwise dynamic filter discovery (and any 
expression-walking pass) will silently skip your node."



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