Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
HBase, mail # user - HBase shell split command acts incorrectly with hex split keys.


Copy link to this message
-
Re: HBase shell split command acts incorrectly with hex split keys.
Stack 2013-07-03, 17:54
Try single quotes.  The shell (ruby) may be trying to 'help you' by
interpreting your hex.

hbase(main):018:0> print "\x20\n"

hbase(main):019:0> print '\x20\n'
\x20\nhbase(main):020:0>

See how w/ double quotes it prints space and new line where when I
single-quote it, it prints out the literal?

At the end of the shell help it says:

"If you are using binary keys or values and need to enter them in the
shell, use
double-quote'd hexadecimal representation. For example:

  hbase> get 't1', "key\x03\x3f\xcd"
  hbase> get 't1', "key\003\023\011"
  hbase> put 't1', "test\xef\xff", 'f1:', "\x01\x33\x40"
..."

Looks like we need to add a line which says if you are using hex, to avoid
ruby's interpreting your intent, single-quote.

St.Ack
On Wed, Jul 3, 2013 at 4:30 AM, Ding Haifeng <[EMAIL PROTECTED]> wrote:

> Hi, all.
>
> When I tried to do a manual region split from HBase shell, I found that
> split command acts incorrectly with hex split keys.
>
> For example, I executed
>
> hbase(main):003:0> split 'tsdb', "\x00\x00\xC3"
>
> but table 'tsdb' actually split at "\x00\x00\xEF\xBF\xBD"
>
> I'm running Hbase 0.94.8, r1485407, both server-side and client-side.
>
> Any help would be appreciated. Thanks.
>
>
>
> --
> Ding Haifeng
>