Zoltan Haindrich created HIVE-20296:
---------------------------------------

             Summary: Improve HivePointLookupOptimizerRule to be able to 
extract from more sophisticated contexts
                 Key: HIVE-20296
                 URL: https://issues.apache.org/jira/browse/HIVE-20296
             Project: Hive
          Issue Type: Improvement
          Components: Logical Optimizer
            Reporter: Zoltan Haindrich
            Assignee: Zoltan Haindrich


Currently it could handle conditions in the form:
{code}
( ( a=1 && b=1 && ... ) || (a=2 && b=2 && ...) || ... )
{code}

If there is some noise somewhere in the or like: 
{code}
( x=18 || ( a=1 && b=1 && ... ) || (a=2 && b=2 && ...) || ... )
{code}
it stops processing.

https://github.com/apache/hive/blob/2cabb8da150b8fb980223fbd6c2c93b842ca3ee5/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/rules/HivePointLookupOptimizerRule.java#L238

HIVE-19097 right now unwinds some ors which can't be packed back; like query15
https://github.com/apache/hive/blob/2cabb8da150b8fb980223fbd6c2c93b842ca3ee5/ql/src/test/queries/clientpositive/perf/query15.q#L14




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

Reply via email to