[ https://issues.apache.org/jira/browse/HBASE-7621?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14639511#comment-14639511 ]
Rick Kellogg commented on HBASE-7621: ------------------------------------- On a related issue, I spent most of the day today tracking down a problem with text keys (part1*part2*part3) with embedded asterisks. When I converted them to underscores all the problems went away. Believe the fundamental issue is within the org.apache.hadoop.hbase.util.Bytes.toStringBinary method. It attempts to do some sort of encoding which I believe is not URL friendly. There are no unit tests related to punctuation characters in the KeyValueTestUtil class. > REST server doesn't support binary row keys > ------------------------------------------- > > Key: HBASE-7621 > URL: https://issues.apache.org/jira/browse/HBASE-7621 > Project: HBase > Issue Type: Bug > Components: REST > Affects Versions: 0.94.0, 0.95.2 > Reporter: Craig Muchinsky > > The REST server doesn't seem to support using binary (MD5 for example) row > keys. I believe the root cause of this is the use of Bytes.toBytes() in the > RowSpec.parseRowKeys() method. Based on the use of Bytes.toStringBinary() > within RemoteHTable.buildRowSpec(), I believe the converse function > Bytes.toBytesBinary() should be used for row key parsing in > RowSpec.parseRowKeys(). > I also noticed that the RemoteHTable.buildRowSpec() method isn't URL encoding > the row key, which is a mismatch to the logic in RowSpec.parseRowKeys() which > performs URL decoding for both the start and stop row keys. -- This message was sent by Atlassian JIRA (v6.3.4#6332)