[
https://issues.apache.org/jira/browse/HBASE-15706?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15258511#comment-15258511
]
huaxiang sun commented on HBASE-15706:
--------------------------------------
Hi [~anoop.hbase], I briefly looked at the change TagUtil#getValueAsString's
use of toStringBinary() from toString. There are some impacts which need more
thoughts. For example, VisibilityController.java#preBatchMutate(), there is one
line
cellVisibility = new CellVisibility(TagUtil.getValueAsString(tag));
If the encoding changes, this will set CellVisibility#expression as an invalid
string. I am making the following change, in case I misunderstood what you
said, thanks.
{code}
diff --git a/hbase-common/src/main/java/org/apache/hadoop/hbase/TagUtil.java
b/hbase-common/src/main/java/org/apache/hadoop/hbase/TagUtil.java
index 65f0cad..cd30249 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/TagUtil.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/TagUtil.java
@@ -161,9 +161,9 @@ public final class TagUtil {
*/
public static String getValueAsString(Tag tag){
if(tag.hasArray()){
- return Bytes.toString(tag.getValueArray(), tag.getValueOffset(),
tag.getValueLength());
+ return Bytes.toStringBinary(tag.getValueArray(), tag.getValueOffset(),
tag.getValueLength());
}
- return Bytes.toString(cloneValue(tag));
+ return Bytes.toStringBinary(cloneValue(tag));
}
/**
{code}
> HFilePrettyPrinter should print out nicely formatted tags
> ---------------------------------------------------------
>
> Key: HBASE-15706
> URL: https://issues.apache.org/jira/browse/HBASE-15706
> Project: HBase
> Issue Type: Improvement
> Components: HFile
> Affects Versions: 2.0.0
> Reporter: huaxiang sun
> Priority: Minor
> Attachments: HBASE-15706-v001.patch
>
>
> When I was using HFile to print out a rows with tags, the output is like:
> {code}
> hsun-MBP:hbase-2.0.0-SNAPSHOT hsun$ hbase
> org.apache.hadoop.hbase.io.hfile.HFile -f
> /tmp/71afa45b1cb94ea1858a99f31197274f -p
> 2016-04-25 11:40:40,409 WARN [main] util.NativeCodeLoader: Unable to load
> native-hadoop library for your platform... using builtin-java classes where
> applicable
> 2016-04-25 11:40:40,580 INFO [main] hfile.CacheConfig: CacheConfig:disabled
> K: b/b:b/1461608231279/Maximum/vlen=0/seqid=0 V:
> K: b/b:b/1461608231278/Put/vlen=1/seqid=0 V: b T[0]: �
> Scanned kv count -> 2
> {code}
> With attached patch, the print is now like:
> {code}
> 2016-04-25 11:57:05,849 INFO [main] hfile.CacheConfig: CacheConfig:disabled
> K: b/b:b/1461609876838/Maximum/vlen=0/seqid=0 V:
> K: b/b:b/1461609876837/Put/vlen=1/seqid=0 V: b T[0]: [Tag type : 8, value :
> \x00\x0E\xEE\xEE]
> Scanned kv count -> 2
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)