HBASE row prefix scan in reverse order in hbase

tanbog picture tanbog · Sep 29, 2016 · Viewed 7.4k times · Source

I have a row key of the form:

<name>--<zero-padded timestamp>

Using HBASE shell I want to find last 15 entries with the prefix .

scan 'mytable', {LIMIT => 15, ROWPREFIXFILTER => 'name' }

Gives me the first 15, but:

scan 'mytable', {LIMIT => 15, REVERSED => TRUE, ROWPREFIXFILTER => 'name'}

returns zero results...

What is the syntax for such a request?

Is it possible, or do I have to do something cheesy like use MAXINT-timestamp as my rowkey to manually reverse the key ordering?

Answer

Armstrongya picture Armstrongya · Oct 18, 2016

I can execute your query command in HBase shell environment, and get the expected result. But couldn't get any result throw Java Client. My HBase version is 0.98.

There is a bug when use HBase client scan with reversed = true, see this jira issue hbase-client: scanner with reversed=true and small=true get no result