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

Reply via email to