You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "rajeshbabu (JIRA)" <ji...@apache.org> on 2013/07/03 14:37:20 UTC
[jira] [Created] (HBASE-8859) truncate_preserve get table split
keys as it is instead of converting them to string type and then again to
bytes
rajeshbabu created HBASE-8859:
---------------------------------
Summary: truncate_preserve get table split keys as it is instead of converting them to string type and then again to bytes
Key: HBASE-8859
URL: https://issues.apache.org/jira/browse/HBASE-8859
Project: HBase
Issue Type: Bug
Components: scripts
Affects Versions: 0.95.1
Reporter: rajeshbabu
Assignee: rajeshbabu
Fix For: 0.98.0, 0.95.2
If we take int,long or double bytes as split keys then we are not creating table with same split keys because converting them to strings directly and to bytes is giving different split keys, sometimes getting IllegalArgument exception because of same split keys(converted). Instead we can get split keys directly from HTable and pass them while creating table.
{code}
h_table = org.apache.hadoop.hbase.client.HTable.new(conf, table_name)
splits = h_table.getRegionLocations().keys().map{|i| i.getStartKey} :byte
splits = org.apache.hadoop.hbase.util.Bytes.toByteArrays(splits)
{code}
{code}
Truncating 'emp3' table (it may take a while):
- Disabling table...
- Dropping table...
- Creating table with region boundaries...
ERROR: java.lang.IllegalArgumentException: All split keys must be unique, found duplicate: B\x11S\xEF\xBF\xBD\xEF\xBF\xBD\xEF\xBF\xBD\x00\x00, B\x11S\xEF\xBF\xBD\xEF\xBF\xBD\xEF\xBF\xBD\x00\x00
{code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira