[ 
https://issues.apache.org/jira/browse/DRILL-6589?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16554945#comment-16554945
 ] 

ASF GitHub Bot commented on DRILL-6589:
---------------------------------------

gparai commented on a change in pull request #1372: DRILL-6589: Push transitive 
closure predicates past aggregates/projects
URL: https://github.com/apache/drill/pull/1372#discussion_r204951832
 
 

 ##########
 File path: 
exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillRelFactories.java
 ##########
 @@ -122,4 +127,16 @@ public RelNode createJoin(RelNode left, RelNode right,
     }
   }
 
+  private static class DrillAggregateFactoryImpl implements 
RelFactories.AggregateFactory {
+
+    @Override
+    public RelNode createAggregate(RelNode input, boolean indicator, 
ImmutableBitSet groupSet,
+                                   ImmutableList<ImmutableBitSet> groupSets, 
List<AggregateCall> aggCalls) {
+      try {
+        return new DrillAggregateRel(input.getCluster(), input.getTraitSet(), 
input, indicator, groupSet, groupSets, aggCalls);
+      } catch (InvalidRelException ex) {
 
 Review comment:
   Done.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Push transitive closure generated predicates past aggregates/projects
> ---------------------------------------------------------------------
>
>                 Key: DRILL-6589
>                 URL: https://issues.apache.org/jira/browse/DRILL-6589
>             Project: Apache Drill
>          Issue Type: Bug
>    Affects Versions: 1.13.0
>            Reporter: Gautam Kumar Parai
>            Assignee: Gautam Kumar Parai
>            Priority: Major
>             Fix For: 1.15.0
>
>
> Here is a sample query that may benefit from this optimization:
> SELECT * FROM T1 WHERE a1 = 5 AND a1 IN (SELECT a2 FROM T2); 
> Here the transitive predicate a2 = 5 would be pushed past the aggregate due 
> to this optimization.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to