peter-toth opened a new pull request, #13046: URL: https://github.com/apache/datafusion/pull/13046
_Please note that this PR is WIP and contains the changes of https://github.com/apache/datafusion/pull/13005 and https://github.com/apache/datafusion/pull/13002 too. Once those PRs get merged only the last commit of this PR remains._ ## Which issue does this PR close? Part of https://github.com/apache/datafusion/issues/12599. ## Rationale for this change As described in https://github.com/apache/datafusion/issues/12599, there is a CSE rule for logical plans already, but some projects create physical plans directly that could benefit from physical CSE. ## What changes are included in this PR? This PR: - Adds `EliminateCommonPhysicalSubexprs` rule to eliminate common subtrees for `Arc<dyn PhysicalExpr>` trees. This initial implementation targets `ProjectionExec` nodes only. Follow-up PR can add support for other nodes like aggregates and filters. - Adds `DynHashNode` trait and implements it for `PhysicalExpr`s. - Contains some code cleanup in `CommonSubexprEliminate` rule. ## Are these changes tested? Added new UTs. ## Are there any user-facing changes? No. -- 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: github-unsubscr...@datafusion.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: github-unsubscr...@datafusion.apache.org For additional commands, e-mail: github-h...@datafusion.apache.org