Github user amansinha100 commented on a diff in the pull request:
https://github.com/apache/drill/pull/328#discussion_r50300305
--- Diff:
exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/partition/PruneScanRule.java
---
@@ -78,71 +94,68 @@ public PruneScanRule(RelOptRuleOperand operand, String
id, OptimizerRulesContext
this.optimizerContext = optimizerContext;
}
- public static final RelOptRule getFilterOnProject(OptimizerRulesContext
optimizerRulesContext) {
- return new PruneScanRule(
- RelOptHelper.some(DrillFilterRel.class,
RelOptHelper.some(DrillProjectRel.class, RelOptHelper.any(DrillScanRel.class))),
- "PruneScanRule:Filter_On_Project",
- optimizerRulesContext) {
+ private static class DirPruneScanFilterOnProjectRule extends
PruneScanRule {
+ private final boolean calciteLogical;
--- End diff --
It's not clear to me why a flag is needed to keep track of Calcite
logical...ideally this should be handled by the type of the RelNode. We may
need to do some refactoring of this rule to separate out the ones that apply
during Calcite logical planning vs. Drill logical planning.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---