jorgecarleitao opened a new pull request #9333: URL: https://github.com/apache/arrow/pull/9333
This PR adds support for custom [logical] optimization rules to be injected to the `ExecutionContext`, thereby allowing people to create their own optimizers and run them through the logical plan during the optimization step. Another way of thinking about this is that `QueryPlanner` is now only responsible for converting a logical plan into an execution plan, while the `optimizerRule` is responsible for re-writing a logical plan into a logical plan: * `OptimizerRule`: `LogicalPlan -> LogicalPlan` * `QueryPlanner`: `LogicalPlan -> ExecutionPlan` The second commit on this PR is just a small simplification that helps people writing the rules without having to worry about the `Explain`. This is important because forgetting about it has major consequences to UX (explain does not work as intended) ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: [email protected]
