RegionServer confused about empty row keys
------------------------------------------

                 Key: HBASE-3170
                 URL: https://issues.apache.org/jira/browse/HBASE-3170
             Project: HBase
          Issue Type: Bug
          Components: regionserver
    Affects Versions: 0.89.20100924, 0.89.20100621
            Reporter: Benoit Sigoure


I'm no longer sure about the expected behavior when using an empty row key 
(e.g. a 0-byte long byte array).  I assumed that this was a legitimate row key, 
just like having an empty column qualifier is allowed.  But it seems that the 
RegionServer considers the empty row key to be whatever the first row key is.
{code}
Version: 0.89.20100830, r0da2890b242584a8a5648d83532742ca7243346b, Sat Sep 18 
15:30:09 PDT 2010

hbase(main):001:0> scan 'tsdb-uid', {LIMIT => 1}
ROW                           COLUMN+CELL                                       
                                   
 \x00                         column=id:metrics, timestamp=1288375187699, 
value=foo      
 \x00                         column=id:tagk, timestamp=1287522021046, 
value=bar         
 \x00                         column=id:tagv, timestamp=1288111387685, 
value=qux      
1 row(s) in 0.4610 seconds

hbase(main):002:0> get 'tsdb-uid', ''
COLUMN                        CELL                                              
                                   
 id:metrics                   timestamp=1288375187699, value=foo                
         
 id:tagk                      timestamp=1287522021046, value=bar                
         
 id:tagv                      timestamp=1288111387685, value=qux                
      
3 row(s) in 0.0910 seconds

hbase(main):003:0> get 'tsdb-uid', "\000"
COLUMN                        CELL                                              
                                   
 id:metrics                   timestamp=1288375187699, value=foo                
         
 id:tagk                      timestamp=1287522021046, value=bar                
         
 id:tagv                      timestamp=1288111387685, value=qux                
      
3 row(s) in 0.0550 seconds
{code}

This isn't a parsing problem with the command-line of the shell.  I can 
reproduce this behavior both with plain Java code and with my asynchbase client.

Since I don't actually have a row with an empty row key, I expected that the 
first {{get}} would return nothing.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to