Ashu Pachauri created HBASE-18125:
-------------------------------------

             Summary: HBase shell disregards spaces at the end of a split key 
in a split file
                 Key: HBASE-18125
                 URL: https://issues.apache.org/jira/browse/HBASE-18125
             Project: HBase
          Issue Type: Bug
          Components: shell
    Affects Versions: 1.3.1, 2.0.0
            Reporter: Ashu Pachauri


When converting row keys to a printable string representation, Bytes class 
considers SPACE as a printable character, so it prints it out as it is. So, 
it's quite possible that a row key has a space at the end.

When specifying split points in a file, the row keys are not quoted and the 
shell wrapper "admin.rb" strips any whitespace off the row keys:

{code}
 File.foreach(splits_file) do |line|
            arg[SPLITS].push(line.strip())
          end
{code}
The correct approach is to use "chomp()" instead of "strip()" to just strip off 
carriage returns and newlines. We should assume that the hbase user is either 
using split points printed out by hbase itself (which will not have tabs) or is 
diligent enough to not use tabs at the end of a split point.
What's worse is that it goes undetected and will result in undesirable split 
points.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to