hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nick Dimiduk (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-12183) FuzzyRowFilter doesn't support reverse scans
Date Mon, 06 Oct 2014 22:58:33 GMT

    [ https://issues.apache.org/jira/browse/HBASE-12183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14161168#comment-14161168
] 

Nick Dimiduk commented on HBASE-12183:
--------------------------------------

This is wrong.

{noformat}
-  private static boolean isMax(byte fuzzyKeyByte) {
-    return (fuzzyKeyByte & 0xFF) == 255;
+  private static boolean isMax(boolean reverse, byte fuzzyKeyByte) {
+    return fuzzyKeyByte == (reverse ? Byte.MIN_VALUE : Byte.MAX_VALUE);
{noformat}

Should be {{(byte) (reverse ? 0 : 0xff)}}

Simply zero-ing out existing bytes isn't correct for this either. Will need to increment and
truncate. Seems like this zero-ing strategy isn't working for some edge cases as well.

> FuzzyRowFilter doesn't support reverse scans
> --------------------------------------------
>
>                 Key: HBASE-12183
>                 URL: https://issues.apache.org/jira/browse/HBASE-12183
>             Project: HBase
>          Issue Type: Bug
>          Components: Filters
>            Reporter: Nick Dimiduk
>            Assignee: Nick Dimiduk
>         Attachments: 12183.patch
>
>
> Try using the FuzzyRowFilter with a reversed scanner and you'll get an RPC timeout. Looking
at the code, this filter ignores the reversed flag and always move forward when calculating
the value of getNextCellHint.



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

Mime
View raw message