Jesus Camacho Rodriguez created HIVE-11726:
----------------------------------------------

             Summary: Pushed IN predicates created by PointLookupOptimizer to 
the metastore
                 Key: HIVE-11726
                 URL: https://issues.apache.org/jira/browse/HIVE-11726
             Project: Hive
          Issue Type: Bug
    Affects Versions: 2.0.0
            Reporter: Jesus Camacho Rodriguez
            Assignee: Jesus Camacho Rodriguez


The PointLookupOptimizer can turn off some of the optimizations due to its use 
of tuple IN() clauses.

HIVE-11573 introduced the extraction of sub-clauses that could be pushed down 
till the TableScan operators, though they wouldn't be pushed down to the 
metastore.

In this issue, we tackle this problem by:
1) Grouping the columns in the sub-clauses depending on their lineage. This way 
PPD will be able to push them down throw the plan without any extension. For 
instance, if a, b, and c are partition columns, a and b belong to table1, and c 
belong to table2:
{code}
(a,b,c) IN ((1,2,3),(2,3,4)) ->
           (a,b) IN ((1,2),(2,3)) and c in (3,4) and (a,b,c) IN 
((1,2,3),(2,3,4))
{code}
2) Extending the filter parser of the metastore to support IN clauses, 
including multiple columns. This allows to push those additional predicates 
down throw directSQL to the metastore.



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

Reply via email to