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

Jesus Camacho Rodriguez commented on HIVE-12478:
------------------------------------------------

Initial patch groups PPD and JoinTransitive inference in one single invocation. 
I have been running some local tests, and we do not fall in any loop.

In addition, HiveRuleRegistry has been enhanced in case we want to register 
predicates that have been pushed. However, the enhancement is not used yet. 
Further, I think we will not need to use it, as being able to register the 
operators that we have already visited in a given rule will be sufficient.

Another discussion that we had is whether HiveRuleRegistry should register the 
operators or the digest of the plan. We still register the operators objects. 
The reason is that if we had registered the digest of a given subplan in the 
tree, and the same subplan appears somewhere else in the tree, we would not 
trigger the optimization (and we should trigger it).

[~pxiong], could you check if after applying this patch, ReduceExpressions 
could be plugged in the same invocation as PPD and join transitive inference 
(step 3 in pre-join optimizations)?

> Improve Hive/Calcite Trasitive Predicate inference
> --------------------------------------------------
>
>                 Key: HIVE-12478
>                 URL: https://issues.apache.org/jira/browse/HIVE-12478
>             Project: Hive
>          Issue Type: Bug
>    Affects Versions: 1.2.1
>            Reporter: Laljo John Pullokkaran
>            Assignee: Jesus Camacho Rodriguez
>         Attachments: HIVE-12478.patch
>
>
> HiveJoinPushTransitivePredicatesRule does not pull up predicates for 
> transitive inference if they contain more than one column.
> EXPLAIN select * from srcpart join (select ds as ds, ds as `date` from 
> srcpart where  (ds = '2008-04-08' and value=1)) s on (srcpart.ds = s.ds);



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to