Repository: hbase Updated Branches: refs/heads/master 338e39970 -> 88038cf47
HBASE-14120 ByteBufferUtils#compareTo small optimization. Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/88038cf4 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/88038cf4 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/88038cf4 Branch: refs/heads/master Commit: 88038cf473a17a6b059902e080f1bc10d338b7c9 Parents: 338e399 Author: anoopsjohn <[email protected]> Authored: Mon Jul 20 16:49:51 2015 +0530 Committer: anoopsjohn <[email protected]> Committed: Mon Jul 20 16:49:51 2015 +0530 ---------------------------------------------------------------------- .../apache/hadoop/hbase/util/ByteBufferUtils.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/88038cf4/hbase-common/src/main/java/org/apache/hadoop/hbase/util/ByteBufferUtils.java ---------------------------------------------------------------------- diff --git a/hbase-common/src/main/java/org/apache/hadoop/hbase/util/ByteBufferUtils.java b/hbase-common/src/main/java/org/apache/hadoop/hbase/util/ByteBufferUtils.java index 1fb5991..b80b38a 100644 --- a/hbase-common/src/main/java/org/apache/hadoop/hbase/util/ByteBufferUtils.java +++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/util/ByteBufferUtils.java @@ -539,17 +539,17 @@ public final class ByteBufferUtils { if (UnsafeAccess.isAvailable()) { long offset1Adj, offset2Adj; Object refObj1 = null, refObj2 = null; - if (buf1.hasArray()) { + if (buf1.isDirect()) { + offset1Adj = o1 + ((DirectBuffer) buf1).address(); + } else { offset1Adj = o1 + buf1.arrayOffset() + UnsafeAccess.BYTE_ARRAY_BASE_OFFSET; refObj1 = buf1.array(); - } else { - offset1Adj = o1 + ((DirectBuffer) buf1).address(); } - if (buf2.hasArray()) { + if (buf2.isDirect()) { + offset2Adj = o2 + ((DirectBuffer) buf2).address(); + } else { offset2Adj = o2 + buf2.arrayOffset() + UnsafeAccess.BYTE_ARRAY_BASE_OFFSET; refObj2 = buf2.array(); - } else { - offset2Adj = o2 + ((DirectBuffer) buf2).address(); } return compareToUnsafe(refObj1, offset1Adj, l1, refObj2, offset2Adj, l2); } @@ -569,11 +569,11 @@ public final class ByteBufferUtils { if (UnsafeAccess.isAvailable()) { long offset1Adj; Object refObj1 = null; - if (buf1.hasArray()) { + if (buf1.isDirect()) { + offset1Adj = o1 + ((DirectBuffer) buf1).address(); + } else { offset1Adj = o1 + buf1.arrayOffset() + UnsafeAccess.BYTE_ARRAY_BASE_OFFSET; refObj1 = buf1.array(); - } else { - offset1Adj = o1 + ((DirectBuffer) buf1).address(); } return compareToUnsafe(refObj1, offset1Adj, l1, buf2, o2 + UnsafeAccess.BYTE_ARRAY_BASE_OFFSET, l2);
