Amend HBASE-18026 ProtobufUtil seems to do extra array copying If the ByteString is not a LiteralByteString, just do toByteArray().
Signed-off-by: Andrew Purtell <apurt...@apache.org> Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/719ab32c Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/719ab32c Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/719ab32c Branch: refs/heads/branch-1.2 Commit: 719ab32cc6910cf393ce235315190ffd8dd7a3c8 Parents: 14ab4a9 Author: Vincent <vincent.p...@salesforce.com> Authored: Sun May 14 19:26:15 2017 -0700 Committer: Andrew Purtell <apurt...@apache.org> Committed: Mon May 15 18:09:46 2017 -0700 ---------------------------------------------------------------------- .../main/java/com/google/protobuf/HBaseZeroCopyByteString.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/719ab32c/hbase-protocol/src/main/java/com/google/protobuf/HBaseZeroCopyByteString.java ---------------------------------------------------------------------- diff --git a/hbase-protocol/src/main/java/com/google/protobuf/HBaseZeroCopyByteString.java b/hbase-protocol/src/main/java/com/google/protobuf/HBaseZeroCopyByteString.java index 9d75612..d0acd4c 100644 --- a/hbase-protocol/src/main/java/com/google/protobuf/HBaseZeroCopyByteString.java +++ b/hbase-protocol/src/main/java/com/google/protobuf/HBaseZeroCopyByteString.java @@ -68,7 +68,7 @@ public final class HBaseZeroCopyByteString extends LiteralByteString { if (buf instanceof LiteralByteString) { return ((LiteralByteString) buf).bytes; } - throw new UnsupportedOperationException("Need a LiteralByteString, got a " - + buf.getClass().getName()); + // In case it's BoundedByteString + return buf.toByteArray(); } }