[ 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