drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Akihiko Kusanagi (JIRA)" <j...@apache.org>
Subject [jira] [Issue Comment Deleted] (DRILL-4020) The not-equal operator returns incorrect results when used on the HBase row key
Date Tue, 03 Nov 2015 19:31:27 GMT

     [ https://issues.apache.org/jira/browse/DRILL-4020?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Akihiko Kusanagi updated DRILL-4020:
------------------------------------
    Comment: was deleted

(was: Created reviewboard )

> The not-equal operator returns incorrect results when used on the HBase row key
> -------------------------------------------------------------------------------
>
>                 Key: DRILL-4020
>                 URL: https://issues.apache.org/jira/browse/DRILL-4020
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Storage - HBase
>    Affects Versions: 1.2.0
>         Environment: Drill Sandbox
>            Reporter: Akihiko Kusanagi
>            Priority: Critical
>         Attachments: DRILL-4020.1.patch.txt, DRILL-4020.patch, DRILL-4020.patch, DRILL-4020.patch,
DRILL-4020.patch
>
>
> Create a test HBase table:
> {noformat}
> hbase> create 'table', 'f'
> hbase> put 'table', 'row1', 'f:c', 'value1'
> hbase> put 'table', 'row2', 'f:c', 'value2'
> hbase> put 'table', 'row3', 'f:c', 'value3'
> {noformat}
> The table looks like this:
> {noformat}
> 0: jdbc:drill:zk=maprdemo:5181> SELECT CONVERT_FROM(row_key, 'UTF8') FROM hbase.`table`;
> +---------+
> | EXPR$0  |
> +---------+
> | row1    |
> | row2    |
> | row3    |
> +---------+
> 1 row selected (4.596 seconds)
> {noformat}
> However, this query returns incorrect results when a not-equal operator is used on the
row key:
> {noformat}
> 0: jdbc:drill:zk=maprdemo:5181> SELECT CONVERT_FROM(row_key, 'UTF8') FROM hbase.`table`
WHERE row_key <> 'row1';
> +---------+
> | EXPR$0  |
> +---------+
> | row1    |
> | row2    |
> | row3    |
> +---------+
> 1 row selected (0.573 seconds)
> {noformat}
> In the query plan, there is no RowFilter:
> {noformat}
> 00-00    Screen
> 00-01      Project(EXPR$0=[CONVERT_FROMUTF8($0)])
> 00-02        Scan(groupscan=[HBaseGroupScan [HBaseScanSpec=HBaseScanSpec [tableName=table,
startRow=, stopRow=, filter=null], columns=[`row_key`]]])
> {noformat}
> When the query has multiple not-equal operators, it works fine:
> {noformat}
> 0: jdbc:drill:zk=maprdemo:5181> SELECT CONVERT_FROM(row_key, 'UTF8') FROM hbase.`table`
WHERE row_key <> 'row1' AND row_key <> 'row2';
> +---------+
> | EXPR$0  |
> +---------+
> | row3    |
> +---------+
> 1 row selected (0.255 seconds)
> {noformat}
> In the query plan, a FilterList has two RowFilters with NOT_EQUAL operators:
> {noformat}
> 00-00    Screen
> 00-01      Project(EXPR$0=[CONVERT_FROMUTF8($0)])
> 00-02        Scan(groupscan=[HBaseGroupScan [HBaseScanSpec=HBaseScanSpec [tableName=table,
startRow=, stopRow=, filter=FilterList AND (2/2): [RowFilter (NOT_EQUAL, row1), RowFilter
(NOT_EQUAL, row2)]], columns=[`row_key`]]])
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message