[
https://issues.apache.org/jira/browse/HIVE-1643?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13426368#comment-13426368
]
bharath v commented on HIVE-1643:
---------------------------------
The problem becomes easy if all the columns are binary. Then we can build
nested FilterLists recursively (since a FilterList can contain another
FilterList). However the problem comes when some of the columns are not binary.
For eg In the query
select * from tt where col1 < 23 or (col2 < 2 and col3 = 5) or (col4 = 6 or
(col5 = 3 or col6 > 7));
col6 is not binary, then we cannot put a Filter with (col6 > 7). Then how to
determine the set of conditions that can be pushed? (In the above example , we
cannot push whole (col4 = 6 or (col5 = 3 or col6 > 7)) . I've gone through the
source of IPA and I feel it does the same. I takes only perfect ANDs so that
they can be pushed as a whole. Any thoughts?
> support range scans and non-key columns in HBase filter pushdown
> ----------------------------------------------------------------
>
> Key: HIVE-1643
> URL: https://issues.apache.org/jira/browse/HIVE-1643
> Project: Hive
> Issue Type: Improvement
> Components: HBase Handler
> Affects Versions: 0.9.0
> Reporter: John Sichi
> Assignee: bharath v
> Labels: patch
> Attachments: HIVE-1643.patch, hbase_handler.patch
>
>
> HIVE-1226 added support for WHERE rowkey=3. We would like to support WHERE
> rowkey BETWEEN 10 and 20, as well as predicates on non-rowkeys (plus
> conjunctions etc). Non-rowkey conditions can't be used to filter out entire
> ranges, but they can be used to push the per-row filter processing as far
> down as possible.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira