You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by te...@apache.org on 2017/11/30 08:42:34 UTC

hbase git commit: HBASE-19386 Enable Arm64 unaligned support for HBase

Repository: hbase
Updated Branches:
  refs/heads/master 9434d52c1 -> ddbff4fd8


HBASE-19386 Enable Arm64 unaligned support for HBase

On Arm64, java.nio.Bits.unaligned() wrongly returns false due to a JDK bug.
This causes HBase UnsafeAvailChecker wrongly returning false on Arm64.
And it slso cause FuzzyRowFilter Unit test failed.
Fix it by providing a hard-code to enbale Arm64 unaligned support.

Jira: HBASE-19386

Change-Id: I3ab821dacbe42b18cd515080da1fa3dc1f1e1d28
Signed-off-by: Yuqi Gu <yu...@arm.com>
Signed-off-by: tedyu <yu...@gmail.com>


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/ddbff4fd
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/ddbff4fd
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/ddbff4fd

Branch: refs/heads/master
Commit: ddbff4fd8700b17229d0192353c109b3ef1c5858
Parents: 9434d52
Author: Yuqi Gu <yu...@arm.com>
Authored: Thu Nov 16 08:17:15 2017 +0000
Committer: tedyu <yu...@gmail.com>
Committed: Thu Nov 30 00:42:21 2017 -0800

----------------------------------------------------------------------
 .../main/java/org/apache/hadoop/hbase/util/UnsafeAvailChecker.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/ddbff4fd/hbase-common/src/main/java/org/apache/hadoop/hbase/util/UnsafeAvailChecker.java
----------------------------------------------------------------------
diff --git a/hbase-common/src/main/java/org/apache/hadoop/hbase/util/UnsafeAvailChecker.java b/hbase-common/src/main/java/org/apache/hadoop/hbase/util/UnsafeAvailChecker.java
index f6744d7..8fe7044 100644
--- a/hbase-common/src/main/java/org/apache/hadoop/hbase/util/UnsafeAvailChecker.java
+++ b/hbase-common/src/main/java/org/apache/hadoop/hbase/util/UnsafeAvailChecker.java
@@ -52,7 +52,7 @@ public class UnsafeAvailChecker {
     // When Unsafe itself is not available/accessible consider unaligned as false.
     if (avail) {
       String arch = System.getProperty("os.arch");
-      if ("ppc64".equals(arch) || "ppc64le".equals(arch)) {
+      if ("ppc64".equals(arch) || "ppc64le".equals(arch) || "aarch64".equals(arch)) {
         // java.nio.Bits.unaligned() wrongly returns false on ppc (JDK-8165231),
         unaligned = true;
       } else {