Zoltán Borók-Nagy created IMPALA-14397:
------------------------------------------

             Summary: Enhance IcebergPredicateConverter for IN predicates
                 Key: IMPALA-14397
                 URL: https://issues.apache.org/jira/browse/IMPALA-14397
             Project: IMPALA
          Issue Type: Improvement
            Reporter: Zoltán Borók-Nagy


Assume there's a table that is partitioned by truncate(column1_bigint) 
truncate(column2_bigint).

Using a query clause: (column1_bigint = 1 OR column2_bigint = 1) it reads data 
from the partitions that could match either column.


Using a query clause: (1 IN (column1_bigint, column2_bigint)) it reads data 
from the entire table ignoring the partitions.

We push down IN-predicates if the elements are literals, e.g. col IN (1, 2). 
The above IN-predicate is the other way around 1 IN (col_1, col_2). We also 
have the assumption that the first expression of the IN-predicate is column.

We could enhance IcebergPredicateConverter to handle the above case. Hopefully 
we can just pushdown the predicate as is to Iceberg. If not, we could convert 
it to a compound predicate with OR operators.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to