hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jesus Camacho Rodriguez (JIRA)" <>
Subject [jira] [Updated] (HIVE-13831) Error pushing predicates to HBase storage handler
Date Fri, 27 May 2016 12:42:12 GMT


Jesus Camacho Rodriguez updated HIVE-13831:
    Status: Open  (was: Patch Available)

> Error pushing predicates to HBase storage handler
> -------------------------------------------------
>                 Key: HIVE-13831
>                 URL:
>             Project: Hive
>          Issue Type: Bug
>          Components: HBase Handler
>    Affects Versions: 2.1.0
>            Reporter: Jesus Camacho Rodriguez
>            Assignee: Jesus Camacho Rodriguez
>         Attachments: HIVE-13831.patch
> Discovered while working on HIVE-13693.
> There is an error on the predicates that we can push to HBaseStorageHandler. In particular,
range predicates of the shape {{(bounded, open)}} and {{(open, bounded)}} over long or int
columns get pushed and return wrong results.
> The problem has to do with the storage order for keys in HBase. Keys are sorted lexicographically.
Since the byte representation of negative values comes after the positive values, open range
predicates need special handling that we do not have right now.
> Thus, for instance, when we push the predicate {{key > 2}}, we return all records
with column _key_ greater than 2, plus the records with negative values for the column _key_.
This problem does not get exposed if a filter is kept in the Hive operator tree, but we should
not assume the latest.
> This fix avoids pushing this kind of predicates to the storage handler, returning them
in the _residual_ part of the predicate that cannot be pushed. In the future, special handling
might be added to support this kind of predicates.

This message was sent by Atlassian JIRA

View raw message