[2/2] hbase git commit: HBASE-20044 TestClientClusterStatus is flakey" Revert "Revert "HBASE-2004 TestClientClusterStatus is flakey"" This is a revert of a revert, i.e. a reapplication, just so I can

2018-02-22 Thread stack
HBASE-20044 TestClientClusterStatus is flakey"
Revert "Revert "HBASE-2004 TestClientClusterStatus is flakey""
This is a revert of a revert, i.e. a reapplication, just so I can fix
the JIRA number.

This reverts commit 6796b8e21faf79e6a738be62f1c7e805e1e88ae3.


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

Branch: refs/heads/branch-2
Commit: 1db1474591f138b9e265ed2edd985344f32151f8
Parents: 6796b8e
Author: Michael Stack 
Authored: Thu Feb 22 09:42:37 2018 -0800
Committer: Michael Stack 
Committed: Thu Feb 22 09:42:37 2018 -0800

--
 .../hadoop/hbase/TestClientClusterStatus.java   | 16 +---
 1 file changed, 9 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/1db14745/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
index bfdae8a..392ff6e 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
@@ -37,6 +37,7 @@ import org.apache.hadoop.hbase.regionserver.HRegionServer;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread;
 import org.apache.hadoop.hbase.util.JVMClusterUtil.RegionServerThread;
+import org.apache.hadoop.hbase.util.Threads;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
@@ -100,13 +101,14 @@ public class TestClientClusterStatus {
 
   @Test
   public void testNone() throws Exception {
-ClusterStatus status0
-  = new 
ClusterStatus(ADMIN.getClusterMetrics(EnumSet.allOf(Option.class)));
-ClusterStatus status1
-  = new 
ClusterStatus(ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class)));
-Assert.assertEquals(status0, status1);
-checkPbObjectNotNull(status0);
-checkPbObjectNotNull(status1);
+ClusterMetrics status0 = 
ADMIN.getClusterMetrics(EnumSet.allOf(Option.class));
+ClusterMetrics status1 = 
ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class));
+// Do a rough compare. More specific compares can fail because all regions 
not deployed yet
+// or more requests than expected.
+Assert.assertEquals(status0.getLiveServerMetrics().size(),
+status1.getLiveServerMetrics().size());
+checkPbObjectNotNull(new ClusterStatus(status0));
+checkPbObjectNotNull(new ClusterStatus(status1));
   }
 
   @Test



hbase git commit: HBASE-19391 Calling HRegion#initializeRegionInternals from a region replica can still re-create a region directory; ADDEDNDUM to fix TestRegionOpen failure

2018-02-22 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/master aef60a11b -> 11af33af2


HBASE-19391 Calling HRegion#initializeRegionInternals from a region replica can 
still re-create a region directory; ADDEDNDUM to fix TestRegionOpen failure


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

Branch: refs/heads/master
Commit: 11af33af2a5baeecac7fb1773d5a1c27291f68dc
Parents: aef60a1
Author: Michael Stack 
Authored: Thu Feb 22 09:14:35 2018 -0800
Committer: Michael Stack 
Committed: Thu Feb 22 09:15:16 2018 -0800

--
 .../java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java  | 2 ++
 1 file changed, 2 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/11af33af/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
index 7190d84..48ca403 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
@@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.util.FSUtils;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.ClassRule;
+import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
@@ -100,6 +101,7 @@ public class TestRegionOpen {
 assertEquals(completed + 1, exec.getCompletedTaskCount());
   }
 
+  @Ignore // Needs rewrite since HBASE-19391 which returns null out of 
createRegionOnFileSystem
   @Test
   public void testNonExistentRegionReplica() throws Exception {
 final TableName tableName = TableName.valueOf(name.getMethodName());



hbase git commit: HBASE-19391 Calling HRegion#initializeRegionInternals from a region replica can still re-create a region directory; ADDEDNDUM to fix TestRegionOpen failure

2018-02-22 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2 e31ff69e9 -> 38a97b87e


HBASE-19391 Calling HRegion#initializeRegionInternals from a region replica can 
still re-create a region directory; ADDEDNDUM to fix TestRegionOpen failure


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

Branch: refs/heads/branch-2
Commit: 38a97b87e62f2b0036235819ac7f05d81392270c
Parents: e31ff69
Author: Michael Stack 
Authored: Thu Feb 22 09:14:35 2018 -0800
Committer: Michael Stack 
Committed: Thu Feb 22 09:14:35 2018 -0800

--
 .../java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java  | 2 ++
 1 file changed, 2 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/38a97b87/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
index 7190d84..48ca403 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
@@ -45,6 +45,7 @@ import org.apache.hadoop.hbase.util.FSUtils;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.ClassRule;
+import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
@@ -100,6 +101,7 @@ public class TestRegionOpen {
 assertEquals(completed + 1, exec.getCompletedTaskCount());
   }
 
+  @Ignore // Needs rewrite since HBASE-19391 which returns null out of 
createRegionOnFileSystem
   @Test
   public void testNonExistentRegionReplica() throws Exception {
 final TableName tableName = TableName.valueOf(name.getMethodName());



[1/2] hbase git commit: HBASE-20044 TestClientClusterStatus is flakey" Revert "Revert "HBASE-2004 TestClientClusterStatus is flakey"" This is a revert of a revert, i.e. a reapplication, just so I can

2018-02-22 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/master 11af33af2 -> 3434e99e6


HBASE-20044 TestClientClusterStatus is flakey"
Revert "Revert "HBASE-2004 TestClientClusterStatus is flakey""
This is a revert of a revert, i.e. a reapplication, just so I can fix
the JIRA number.

This reverts commit 6796b8e21faf79e6a738be62f1c7e805e1e88ae3.


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

Branch: refs/heads/master
Commit: 3434e99e6c728d59ba99141df3730f3e70e0059c
Parents: 3d2e9e2
Author: Michael Stack 
Authored: Thu Feb 22 09:42:37 2018 -0800
Committer: Michael Stack 
Committed: Thu Feb 22 09:44:04 2018 -0800

--
 .../hadoop/hbase/TestClientClusterStatus.java   | 16 +---
 1 file changed, 9 insertions(+), 7 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/3434e99e/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
index bfdae8a..392ff6e 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
@@ -37,6 +37,7 @@ import org.apache.hadoop.hbase.regionserver.HRegionServer;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread;
 import org.apache.hadoop.hbase.util.JVMClusterUtil.RegionServerThread;
+import org.apache.hadoop.hbase.util.Threads;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
@@ -100,13 +101,14 @@ public class TestClientClusterStatus {
 
   @Test
   public void testNone() throws Exception {
-ClusterStatus status0
-  = new 
ClusterStatus(ADMIN.getClusterMetrics(EnumSet.allOf(Option.class)));
-ClusterStatus status1
-  = new 
ClusterStatus(ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class)));
-Assert.assertEquals(status0, status1);
-checkPbObjectNotNull(status0);
-checkPbObjectNotNull(status1);
+ClusterMetrics status0 = 
ADMIN.getClusterMetrics(EnumSet.allOf(Option.class));
+ClusterMetrics status1 = 
ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class));
+// Do a rough compare. More specific compares can fail because all regions 
not deployed yet
+// or more requests than expected.
+Assert.assertEquals(status0.getLiveServerMetrics().size(),
+status1.getLiveServerMetrics().size());
+checkPbObjectNotNull(new ClusterStatus(status0));
+checkPbObjectNotNull(new ClusterStatus(status1));
   }
 
   @Test



hbase git commit: HBASE-19391 Calling HRegion#initializeRegionInternals from a region replica can still re-create a region directory; ADDEDNDUM to fix TestRegionOpen failure

2018-02-22 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-1 af1f7cf43 -> cadc2efd1


HBASE-19391 Calling HRegion#initializeRegionInternals from a region replica can 
still re-create a region directory; ADDEDNDUM to fix TestRegionOpen failure


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

Branch: refs/heads/branch-1
Commit: cadc2efd1207d7d505c9fadaeca9338d21018f08
Parents: af1f7cf
Author: Michael Stack 
Authored: Thu Feb 22 09:14:35 2018 -0800
Committer: Michael Stack 
Committed: Thu Feb 22 09:27:46 2018 -0800

--
 .../org/apache/hadoop/hbase/regionserver/TestRegionOpen.java | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/cadc2efd/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
index edb1d52..62aabce 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
@@ -47,6 +47,7 @@ import org.apache.hadoop.hbase.util.Bytes;
 import org.apache.hadoop.hbase.util.FSUtils;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
+import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
@@ -97,7 +98,8 @@ public class TestRegionOpen {
 assertEquals(2, exec.getCompletedTaskCount());
   }
 
-  @Test(timeout = 6)
+  @Ignore // Needs rewrite since HBASE-19391 which returns null out of 
createRegionOnFileSystem
+  @Test
   public void testNonExistentRegionReplica() throws Exception {
 final TableName tableName = TableName.valueOf(name.getMethodName());
 final byte[] FAMILYNAME = Bytes.toBytes("fam");



[1/2] hbase git commit: HBASE-20041 move jersey-1 exclusions to hbase-rest

2018-02-22 Thread mdrob
Repository: hbase
Updated Branches:
  refs/heads/branch-2 9d3eadd92 -> e31ff69e9
  refs/heads/master 4cf846d08 -> aef60a11b


HBASE-20041 move jersey-1 exclusions to hbase-rest


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

Branch: refs/heads/master
Commit: aef60a11b5a2deac19216ff396ba31c5df0c70d0
Parents: 4cf846d
Author: Mike Drob 
Authored: Wed Feb 21 16:37:23 2018 -0600
Committer: Mike Drob 
Committed: Thu Feb 22 09:34:16 2018 -0600

--
 hbase-rest/pom.xml | 48 
 pom.xml| 44 
 2 files changed, 48 insertions(+), 44 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/aef60a11/hbase-rest/pom.xml
--
diff --git a/hbase-rest/pom.xml b/hbase-rest/pom.xml
index e70e596..b9c50a0 100644
--- a/hbase-rest/pom.xml
+++ b/hbase-rest/pom.xml
@@ -406,6 +406,54 @@
   3.0
 
   
+  
+
+  
+org.apache.hadoop
+hadoop-yarn-server-nodemanager
+${hadoop-three.version}
+
+  
+com.sun.jersey
+jersey-core
+  
+
+  
+  
+org.apache.hadoop
+hadoop-yarn-server-resourcemanager
+${hadoop-three.version}
+
+  
+com.sun.jersey
+jersey-core
+  
+
+  
+  
+org.apache.hadoop
+hadoop-yarn-server-timelineservice
+${hadoop-three.version}
+
+  
+javax.ws.rs
+jsr311-api
+  
+
+  
+  
+org.apache.hadoop
+hadoop-yarn-common
+${hadoop-three.version}
+
+  
+com.sun.jersey
+jersey-core
+  
+
+  
+
+  
   
 
   org.apache.hadoop

http://git-wip-us.apache.org/repos/asf/hbase/blob/aef60a11/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 951747e..9b10ba6 100755
--- a/pom.xml
+++ b/pom.xml
@@ -3003,50 +3003,6 @@

  
  
-   org.apache.hadoop
-   hadoop-yarn-server-nodemanager
-   ${hadoop-three.version}
-   
- 
-   com.sun.jersey
-   jersey-core
- 
-   
- 
- 
-   org.apache.hadoop
-   hadoop-yarn-server-resourcemanager
-   ${hadoop-three.version}
-   
- 
-   com.sun.jersey
-   jersey-core
- 
-   
- 
- 
-   org.apache.hadoop
-   hadoop-yarn-server-timelineservice
-   ${hadoop-three.version}
-   
- 
-   javax.ws.rs
-   jsr311-api
- 
-   
- 
- 
-   org.apache.hadoop
-   hadoop-yarn-common
-   ${hadoop-three.version}
-   
- 
-   com.sun.jersey
-   jersey-core
- 
-   
- 
- 
 org.apache.hadoop
 hadoop-minikdc
 ${hadoop-three.version}



[2/2] hbase git commit: Revert "HBASE-2004 TestClientClusterStatus is flakey" Revert to fix JIRA number; should be 20044.

2018-02-22 Thread stack
Revert "HBASE-2004 TestClientClusterStatus is flakey"
Revert to fix JIRA number; should be 20044.

This reverts commit 92bb4db9ef367039029017aafe61c51f2c0181f9.


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

Branch: refs/heads/master
Commit: 3d2e9e2125ec29c6959c98157ad378d5c53f911d
Parents: 11af33a
Author: Michael Stack 
Authored: Thu Feb 22 09:41:27 2018 -0800
Committer: Michael Stack 
Committed: Thu Feb 22 09:44:04 2018 -0800

--
 .../hadoop/hbase/TestClientClusterStatus.java   | 16 +++-
 1 file changed, 7 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/3d2e9e21/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
index 392ff6e..bfdae8a 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
@@ -37,7 +37,6 @@ import org.apache.hadoop.hbase.regionserver.HRegionServer;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread;
 import org.apache.hadoop.hbase.util.JVMClusterUtil.RegionServerThread;
-import org.apache.hadoop.hbase.util.Threads;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
@@ -101,14 +100,13 @@ public class TestClientClusterStatus {
 
   @Test
   public void testNone() throws Exception {
-ClusterMetrics status0 = 
ADMIN.getClusterMetrics(EnumSet.allOf(Option.class));
-ClusterMetrics status1 = 
ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class));
-// Do a rough compare. More specific compares can fail because all regions 
not deployed yet
-// or more requests than expected.
-Assert.assertEquals(status0.getLiveServerMetrics().size(),
-status1.getLiveServerMetrics().size());
-checkPbObjectNotNull(new ClusterStatus(status0));
-checkPbObjectNotNull(new ClusterStatus(status1));
+ClusterStatus status0
+  = new 
ClusterStatus(ADMIN.getClusterMetrics(EnumSet.allOf(Option.class)));
+ClusterStatus status1
+  = new 
ClusterStatus(ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class)));
+Assert.assertEquals(status0, status1);
+checkPbObjectNotNull(status0);
+checkPbObjectNotNull(status1);
   }
 
   @Test



[1/2] hbase git commit: Revert "HBASE-2004 TestClientClusterStatus is flakey" Revert to fix JIRA number; should be 20044.

2018-02-22 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2 38a97b87e -> 1db147459


Revert "HBASE-2004 TestClientClusterStatus is flakey"
Revert to fix JIRA number; should be 20044.

This reverts commit 92bb4db9ef367039029017aafe61c51f2c0181f9.


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

Branch: refs/heads/branch-2
Commit: 6796b8e21faf79e6a738be62f1c7e805e1e88ae3
Parents: 38a97b8
Author: Michael Stack 
Authored: Thu Feb 22 09:41:27 2018 -0800
Committer: Michael Stack 
Committed: Thu Feb 22 09:41:27 2018 -0800

--
 .../hadoop/hbase/TestClientClusterStatus.java   | 16 +++-
 1 file changed, 7 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/6796b8e2/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
index 392ff6e..bfdae8a 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/TestClientClusterStatus.java
@@ -37,7 +37,6 @@ import org.apache.hadoop.hbase.regionserver.HRegionServer;
 import org.apache.hadoop.hbase.testclassification.MediumTests;
 import org.apache.hadoop.hbase.util.JVMClusterUtil.MasterThread;
 import org.apache.hadoop.hbase.util.JVMClusterUtil.RegionServerThread;
-import org.apache.hadoop.hbase.util.Threads;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
@@ -101,14 +100,13 @@ public class TestClientClusterStatus {
 
   @Test
   public void testNone() throws Exception {
-ClusterMetrics status0 = 
ADMIN.getClusterMetrics(EnumSet.allOf(Option.class));
-ClusterMetrics status1 = 
ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class));
-// Do a rough compare. More specific compares can fail because all regions 
not deployed yet
-// or more requests than expected.
-Assert.assertEquals(status0.getLiveServerMetrics().size(),
-status1.getLiveServerMetrics().size());
-checkPbObjectNotNull(new ClusterStatus(status0));
-checkPbObjectNotNull(new ClusterStatus(status1));
+ClusterStatus status0
+  = new 
ClusterStatus(ADMIN.getClusterMetrics(EnumSet.allOf(Option.class)));
+ClusterStatus status1
+  = new 
ClusterStatus(ADMIN.getClusterMetrics(EnumSet.noneOf(Option.class)));
+Assert.assertEquals(status0, status1);
+checkPbObjectNotNull(status0);
+checkPbObjectNotNull(status1);
   }
 
   @Test



[2/2] hbase git commit: HBASE-20041 move jersey-1 exclusions to hbase-rest

2018-02-22 Thread mdrob
HBASE-20041 move jersey-1 exclusions to hbase-rest


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

Branch: refs/heads/branch-2
Commit: e31ff69e9e0f8aec45e1c2b822c0f6918e323890
Parents: 9d3eadd
Author: Mike Drob 
Authored: Wed Feb 21 16:37:23 2018 -0600
Committer: Mike Drob 
Committed: Thu Feb 22 09:34:36 2018 -0600

--
 hbase-rest/pom.xml | 48 
 pom.xml| 44 
 2 files changed, 48 insertions(+), 44 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/e31ff69e/hbase-rest/pom.xml
--
diff --git a/hbase-rest/pom.xml b/hbase-rest/pom.xml
index 0d6b2ce..e3cd9d8 100644
--- a/hbase-rest/pom.xml
+++ b/hbase-rest/pom.xml
@@ -406,6 +406,54 @@
   3.0
 
   
+  
+
+  
+org.apache.hadoop
+hadoop-yarn-server-nodemanager
+${hadoop-three.version}
+
+  
+com.sun.jersey
+jersey-core
+  
+
+  
+  
+org.apache.hadoop
+hadoop-yarn-server-resourcemanager
+${hadoop-three.version}
+
+  
+com.sun.jersey
+jersey-core
+  
+
+  
+  
+org.apache.hadoop
+hadoop-yarn-server-timelineservice
+${hadoop-three.version}
+
+  
+javax.ws.rs
+jsr311-api
+  
+
+  
+  
+org.apache.hadoop
+hadoop-yarn-common
+${hadoop-three.version}
+
+  
+com.sun.jersey
+jersey-core
+  
+
+  
+
+  
   
 
   org.apache.hadoop

http://git-wip-us.apache.org/repos/asf/hbase/blob/e31ff69e/pom.xml
--
diff --git a/pom.xml b/pom.xml
index d8dcc2a..a9df16f 100755
--- a/pom.xml
+++ b/pom.xml
@@ -2886,50 +2886,6 @@

  
  
-   org.apache.hadoop
-   hadoop-yarn-server-nodemanager
-   ${hadoop-three.version}
-   
- 
-   com.sun.jersey
-   jersey-core
- 
-   
- 
- 
-   org.apache.hadoop
-   hadoop-yarn-server-resourcemanager
-   ${hadoop-three.version}
-   
- 
-   com.sun.jersey
-   jersey-core
- 
-   
- 
- 
-   org.apache.hadoop
-   hadoop-yarn-server-timelineservice
-   ${hadoop-three.version}
-   
- 
-   javax.ws.rs
-   jsr311-api
- 
-   
- 
- 
-   org.apache.hadoop
-   hadoop-yarn-common
-   ${hadoop-three.version}
-   
- 
-   com.sun.jersey
-   jersey-core
- 
-   
- 
- 
 org.apache.hadoop
 hadoop-minikdc
 ${hadoop-three.version}



hbase git commit: HBASE-19767 Fix for Master web UI shows negative values for Remaining KVs

2018-02-22 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2 1db147459 -> 6c039383b


HBASE-19767 Fix for Master web UI shows negative values for Remaining KVs

Negative Remaining KVs and progress percent greater than 100 is because 
CompactionProgress#totalCompactingKVs is sometimes less than 
CompactionProgress#currentCompactedKVs.
Changes add a getter to CompactionProgress#totalCompactingKVs and from inside 
getter warning is logged. currentCompactedKVs are return when 
totalCompactingKVs are less than current.

Signed-off-by: Michael Stack 


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

Branch: refs/heads/branch-2
Commit: 6c039383b9b4ef5bebeb088a5fc6376cefa78185
Parents: 1db1474
Author: Umesh Agashe 
Authored: Wed Feb 21 13:59:59 2018 -0800
Committer: Michael Stack 
Committed: Thu Feb 22 10:09:47 2018 -0800

--
 .../hadoop/hbase/regionserver/HRegionServer.java|  2 +-
 .../apache/hadoop/hbase/regionserver/HStore.java|  4 ++--
 .../compactions/CompactionProgress.java | 16 
 .../hbase/regionserver/TestMajorCompaction.java |  2 +-
 4 files changed, 16 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/6c039383/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
index c39a9af..5310a6d 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
@@ -1617,7 +1617,7 @@ public class HRegionServer extends HasThread implements
   storefileIndexSizeKB += store.getStorefilesRootLevelIndexSize() / 1024;
   CompactionProgress progress = store.getCompactionProgress();
   if (progress != null) {
-totalCompactingKVs += progress.totalCompactingKVs;
+totalCompactingKVs += progress.getTotalCompactingKVs();
 currentCompactedKVs += progress.currentCompactedKVs;
   }
   rootLevelIndexSizeKB += (int) (store.getStorefilesRootLevelIndexSize() / 
1024);

http://git-wip-us.apache.org/repos/asf/hbase/blob/6c039383/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
index bef50b4..c0ef3ef 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
@@ -1373,10 +1373,10 @@ public class HStore implements Store, HeapSize, 
StoreConfigInformation, Propagat
 writeCompactionWalRecord(filesToCompact, sfs);
 replaceStoreFiles(filesToCompact, sfs);
 if (cr.isMajor()) {
-  majorCompactedCellsCount += getCompactionProgress().totalCompactingKVs;
+  majorCompactedCellsCount += 
getCompactionProgress().getTotalCompactingKVs();
   majorCompactedCellsSize += getCompactionProgress().totalCompactedSize;
 } else {
-  compactedCellsCount += getCompactionProgress().totalCompactingKVs;
+  compactedCellsCount += getCompactionProgress().getTotalCompactingKVs();
   compactedCellsSize += getCompactionProgress().totalCompactedSize;
 }
 long outputBytes = getTotalSize(sfs);

http://git-wip-us.apache.org/repos/asf/hbase/blob/6c039383/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
index d40651a..577276e 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
@@ -20,6 +20,8 @@
 package org.apache.hadoop.hbase.regionserver.compactions;
 
 import org.apache.yetus.audience.InterfaceAudience;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * This class holds information relevant for tracking the progress of a
@@ 

hbase git commit: HBASE-19767 Fix for Master web UI shows negative values for Remaining KVs

2018-02-22 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/master 3434e99e6 -> 8afa49f5d


HBASE-19767 Fix for Master web UI shows negative values for Remaining KVs

Negative Remaining KVs and progress percent greater than 100 is because 
CompactionProgress#totalCompactingKVs is sometimes less than 
CompactionProgress#currentCompactedKVs.
Changes add a getter to CompactionProgress#totalCompactingKVs and from inside 
getter warning is logged. currentCompactedKVs are return when 
totalCompactingKVs are less than current.

Signed-off-by: Michael Stack 


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

Branch: refs/heads/master
Commit: 8afa49f5d0e28e96c6e1b6c88c6ac976ac0da2b2
Parents: 3434e99
Author: Umesh Agashe 
Authored: Wed Feb 21 13:59:59 2018 -0800
Committer: Michael Stack 
Committed: Thu Feb 22 10:10:21 2018 -0800

--
 .../hadoop/hbase/regionserver/HRegionServer.java|  2 +-
 .../apache/hadoop/hbase/regionserver/HStore.java|  4 ++--
 .../compactions/CompactionProgress.java | 16 
 .../hbase/regionserver/TestMajorCompaction.java |  2 +-
 4 files changed, 16 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/8afa49f5/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
index 49b7b80..a76dec2 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
@@ -1623,7 +1623,7 @@ public class HRegionServer extends HasThread implements
   storefileIndexSizeKB += store.getStorefilesRootLevelIndexSize() / 1024;
   CompactionProgress progress = store.getCompactionProgress();
   if (progress != null) {
-totalCompactingKVs += progress.totalCompactingKVs;
+totalCompactingKVs += progress.getTotalCompactingKVs();
 currentCompactedKVs += progress.currentCompactedKVs;
   }
   rootLevelIndexSizeKB += (int) (store.getStorefilesRootLevelIndexSize() / 
1024);

http://git-wip-us.apache.org/repos/asf/hbase/blob/8afa49f5/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
index bef50b4..c0ef3ef 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
@@ -1373,10 +1373,10 @@ public class HStore implements Store, HeapSize, 
StoreConfigInformation, Propagat
 writeCompactionWalRecord(filesToCompact, sfs);
 replaceStoreFiles(filesToCompact, sfs);
 if (cr.isMajor()) {
-  majorCompactedCellsCount += getCompactionProgress().totalCompactingKVs;
+  majorCompactedCellsCount += 
getCompactionProgress().getTotalCompactingKVs();
   majorCompactedCellsSize += getCompactionProgress().totalCompactedSize;
 } else {
-  compactedCellsCount += getCompactionProgress().totalCompactingKVs;
+  compactedCellsCount += getCompactionProgress().getTotalCompactingKVs();
   compactedCellsSize += getCompactionProgress().totalCompactedSize;
 }
 long outputBytes = getTotalSize(sfs);

http://git-wip-us.apache.org/repos/asf/hbase/blob/8afa49f5/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
index d40651a..577276e 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/compactions/CompactionProgress.java
@@ -20,6 +20,8 @@
 package org.apache.hadoop.hbase.regionserver.compactions;
 
 import org.apache.yetus.audience.InterfaceAudience;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * This class holds information relevant for tracking the progress of a
@@ -32,9 

hbase git commit: HBASE-20052 TestRegionOpen#testNonExistentRegionReplica fails due to NPE

2018-02-22 Thread tedyu
Repository: hbase
Updated Branches:
  refs/heads/branch-2 6c039383b -> f3753e394


HBASE-20052 TestRegionOpen#testNonExistentRegionReplica fails due to NPE


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

Branch: refs/heads/branch-2
Commit: f3753e394aefa4ae391a059264d679d36315deef
Parents: 6c03938
Author: tedyu 
Authored: Thu Feb 22 12:35:50 2018 -0800
Committer: tedyu 
Committed: Thu Feb 22 12:35:50 2018 -0800

--
 .../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java   | 3 +--
 .../java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java | 2 --
 2 files changed, 1 insertion(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/f3753e39/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
index 3c2d392..904060f 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
@@ -986,12 +986,11 @@ public class HRegionFileSystem {
 
   // Write HRI to a file in case we need to recover hbase:meta
   regionFs.writeRegionInfoOnFilesystem(false);
-  return regionFs;
 } else {
   if (LOG.isDebugEnabled())
 LOG.debug("Skipping creation of .regioninfo file for " + regionInfo);
 }
-return null;
+return regionFs;
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/hbase/blob/f3753e39/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
index 48ca403..7190d84 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
@@ -45,7 +45,6 @@ import org.apache.hadoop.hbase.util.FSUtils;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.ClassRule;
-import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
@@ -101,7 +100,6 @@ public class TestRegionOpen {
 assertEquals(completed + 1, exec.getCompletedTaskCount());
   }
 
-  @Ignore // Needs rewrite since HBASE-19391 which returns null out of 
createRegionOnFileSystem
   @Test
   public void testNonExistentRegionReplica() throws Exception {
 final TableName tableName = TableName.valueOf(name.getMethodName());



hbase git commit: HBASE-20052 TestRegionOpen#testNonExistentRegionReplica fails due to NPE

2018-02-22 Thread tedyu
Repository: hbase
Updated Branches:
  refs/heads/branch-1 cadc2efd1 -> 4d9589b16


HBASE-20052 TestRegionOpen#testNonExistentRegionReplica fails due to NPE


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

Branch: refs/heads/branch-1
Commit: 4d9589b16546a56623e7ab786438536ffdf3dc22
Parents: cadc2ef
Author: tedyu 
Authored: Thu Feb 22 12:41:13 2018 -0800
Committer: tedyu 
Committed: Thu Feb 22 12:41:13 2018 -0800

--
 .../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java   | 3 +--
 .../java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java | 2 --
 2 files changed, 1 insertion(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/4d9589b1/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
index 62c5f5a..7907073c 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
@@ -997,12 +997,11 @@ public class HRegionFileSystem {
 
   // Write HRI to a file in case we need to recover hbase:meta
   regionFs.writeRegionInfoOnFilesystem(false);
-  return regionFs;
 } else {
   if (LOG.isDebugEnabled())
 LOG.debug("Skipping creation of .regioninfo file for " + regionInfo);
 }
-return null;
+return regionFs;
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/hbase/blob/4d9589b1/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
index 62aabce..f45df18 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
@@ -47,7 +47,6 @@ import org.apache.hadoop.hbase.util.Bytes;
 import org.apache.hadoop.hbase.util.FSUtils;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
-import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
@@ -98,7 +97,6 @@ public class TestRegionOpen {
 assertEquals(2, exec.getCompletedTaskCount());
   }
 
-  @Ignore // Needs rewrite since HBASE-19391 which returns null out of 
createRegionOnFileSystem
   @Test
   public void testNonExistentRegionReplica() throws Exception {
 final TableName tableName = TableName.valueOf(name.getMethodName());



hbase git commit: HBASE-20052 TestRegionOpen#testNonExistentRegionReplica fails due to NPE

2018-02-22 Thread tedyu
Repository: hbase
Updated Branches:
  refs/heads/master 1fd2a276f -> d68f697f3


HBASE-20052 TestRegionOpen#testNonExistentRegionReplica fails due to NPE


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

Branch: refs/heads/master
Commit: d68f697f39fc0e660eb85dc9ef67a757102169f2
Parents: 1fd2a27
Author: tedyu 
Authored: Thu Feb 22 12:35:12 2018 -0800
Committer: tedyu 
Committed: Thu Feb 22 12:35:12 2018 -0800

--
 .../org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java   | 3 +--
 .../java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java | 2 --
 2 files changed, 1 insertion(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/d68f697f/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
index 3c2d392..904060f 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionFileSystem.java
@@ -986,12 +986,11 @@ public class HRegionFileSystem {
 
   // Write HRI to a file in case we need to recover hbase:meta
   regionFs.writeRegionInfoOnFilesystem(false);
-  return regionFs;
 } else {
   if (LOG.isDebugEnabled())
 LOG.debug("Skipping creation of .regioninfo file for " + regionInfo);
 }
-return null;
+return regionFs;
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/hbase/blob/d68f697f/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
index 48ca403..7190d84 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionOpen.java
@@ -45,7 +45,6 @@ import org.apache.hadoop.hbase.util.FSUtils;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
 import org.junit.ClassRule;
-import org.junit.Ignore;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
@@ -101,7 +100,6 @@ public class TestRegionOpen {
 assertEquals(completed + 1, exec.getCompletedTaskCount());
   }
 
-  @Ignore // Needs rewrite since HBASE-19391 which returns null out of 
createRegionOnFileSystem
   @Test
   public void testNonExistentRegionReplica() throws Exception {
 final TableName tableName = TableName.valueOf(name.getMethodName());



hbase git commit: Add psomogyi as committer

2018-02-22 Thread psomogyi
Repository: hbase
Updated Branches:
  refs/heads/master 8afa49f5d -> 1fd2a276f


Add psomogyi as committer


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

Branch: refs/heads/master
Commit: 1fd2a276f6849107960acfab7a939aa2842fc9c5
Parents: 8afa49f
Author: Peter Somogyi 
Authored: Thu Feb 22 19:51:59 2018 +0100
Committer: Peter Somogyi 
Committed: Thu Feb 22 19:54:03 2018 +0100

--
 pom.xml | 6 ++
 1 file changed, 6 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/1fd2a276/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 9b10ba6..19a36a7 100755
--- a/pom.xml
+++ b/pom.xml
@@ -471,6 +471,12 @@
   +8
 
 
+  psomogyi
+  Peter Somogyi
+  psomo...@apache.org
+  +1
+
+
   rajeshbabu
   Rajeshbabu Chintaguntla
   rajeshb...@apache.org



hbase git commit: HBASE-19401 Add missing security checks in RSRpcServices

2018-02-22 Thread appy
Repository: hbase
Updated Branches:
  refs/heads/master d68f697f3 -> 51f7b75f1


HBASE-19401 Add missing security checks in RSRpcServices


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

Branch: refs/heads/master
Commit: 51f7b75f1ff368b985fc1932c2be0d7fb004538e
Parents: d68f697
Author: Apekshit Sharma 
Authored: Tue Feb 13 12:33:43 2018 -0800
Committer: Apekshit Sharma 
Committed: Thu Feb 22 16:09:53 2018 -0800

--
 .../hbase/regionserver/RSRpcServices.java   | 22 +++-
 .../access/TestAdminOnlyOperations.java | 56 ++--
 2 files changed, 60 insertions(+), 18 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/51f7b75f/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
index 05bbb47..88ce346 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
@@ -499,6 +499,24 @@ public class RSRpcServices implements HBaseRPCErrorHandler,
   }
 
   /**
+   * Checks for the following pre-checks in order:
+   * 
+   *   RegionServer is running
+   *   If authorization is enabled, then RPC caller has ADMIN 
permissions
+   * 
+   * @param requestName name of rpc request. Used in reporting failures to 
provide context.
+   * @throws ServiceException If any of the above listed pre-check fails.
+   */
+  private void rpcPreCheck(String requestName) throws ServiceException {
+try {
+  checkOpen();
+  requirePermission(requestName, Permission.Action.ADMIN);
+} catch (IOException ioe) {
+  throw new ServiceException(ioe);
+}
+  }
+
+  /**
* Starts the nonce operation for a mutation, if needed.
* @param mutation Mutation.
* @param nonceGroup Nonce group from the request.
@@ -1439,9 +1457,8 @@ public class RSRpcServices implements 
HBaseRPCErrorHandler,
 
   /**
* Called to verify that this server is up and running.
-   *
-   * @throws IOException
*/
+  // TODO : Rename this and HMaster#checkInitialized to isRunning() (or a 
better name).
   protected void checkOpen() throws IOException {
 if (regionServer.isAborted()) {
   throw new RegionServerAbortedException("Server " + 
regionServer.serverName + " aborting");
@@ -3433,6 +3450,7 @@ public class RSRpcServices implements 
HBaseRPCErrorHandler,
   @Override
   public CoprocessorServiceResponse execRegionServerService(RpcController 
controller,
   CoprocessorServiceRequest request) throws ServiceException {
+rpcPreCheck("execRegionServerService");
 return regionServer.execRegionServerService(controller, request);
   }
 

http://git-wip-us.apache.org/repos/asf/hbase/blob/51f7b75f/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
index d4b0650..42d2f36 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
@@ -1,3 +1,4 @@
+
 /**
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -31,12 +32,14 @@ import java.util.HashMap;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
+import org.apache.hadoop.hbase.ServerName;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.Admin;
 import org.apache.hadoop.hbase.client.Connection;
 import org.apache.hadoop.hbase.client.ConnectionFactory;
 import org.apache.hadoop.hbase.coprocessor.CoprocessorHost;
 import org.apache.hadoop.hbase.coprocessor.MasterCoprocessor;
+import org.apache.hadoop.hbase.coprocessor.RegionServerCoprocessor;
 import org.apache.hadoop.hbase.ipc.protobuf.generated.TestProtos;
 import org.apache.hadoop.hbase.ipc.protobuf.generated.TestRpcServiceProtos;
 import org.apache.hadoop.hbase.security.AccessDeniedException;
@@ -88,7 +91,7 @@ public class 

[hbase] Git Push Summary

2018-02-22 Thread apurtell
Repository: hbase
Updated Tags:  refs/tags/1.4.2RC1 [created] 20c6acb77


svn commit: r25229 - in /dev/hbase: hbase-1.4.2RC0/ hbase-1.4.2RC1/

2018-02-22 Thread apurtell
Author: apurtell
Date: Thu Feb 22 23:47:11 2018
New Revision: 25229

Log:
Stage HBase 1.4.2RC1

Added:
dev/hbase/hbase-1.4.2RC1/
dev/hbase/hbase-1.4.2RC1/compat-check-report.html
dev/hbase/hbase-1.4.2RC1/hbase-1.4.2-bin.tar.gz   (with props)
dev/hbase/hbase-1.4.2RC1/hbase-1.4.2-bin.tar.gz.asc
dev/hbase/hbase-1.4.2RC1/hbase-1.4.2-bin.tar.gz.md5
dev/hbase/hbase-1.4.2RC1/hbase-1.4.2-bin.tar.gz.sha
dev/hbase/hbase-1.4.2RC1/hbase-1.4.2-src.tar.gz   (with props)
dev/hbase/hbase-1.4.2RC1/hbase-1.4.2-src.tar.gz.asc
dev/hbase/hbase-1.4.2RC1/hbase-1.4.2-src.tar.gz.md5
dev/hbase/hbase-1.4.2RC1/hbase-1.4.2-src.tar.gz.sha
Removed:
dev/hbase/hbase-1.4.2RC0/

Added: dev/hbase/hbase-1.4.2RC1/compat-check-report.html
==
--- dev/hbase/hbase-1.4.2RC1/compat-check-report.html (added)
+++ dev/hbase/hbase-1.4.2RC1/compat-check-report.html Thu Feb 22 23:47:11 2018
@@ -0,0 +1,552 @@
+
+
+http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd;>
+http://www.w3.org/1999/xhtml; xml:lang="en" lang="en">
+
+
+
+
+hbase: rel/1.4.1 to 1.4.2RC1 compatibility report
+
+body {
+font-family:Arial, sans-serif;
+background-color:White;
+color:Black;
+}
+hr {
+color:Black;
+background-color:Black;
+height:1px;
+border:0;
+}
+h1 {
+margin-bottom:0px;
+padding-bottom:0px;
+font-size:1.625em;
+}
+h2 {
+margin-bottom:0px;
+padding-bottom:0px;
+font-size:1.25em;
+white-space:nowrap;
+}
+div.symbols {
+color:#003E69;
+}
+div.symbols i {
+color:Brown;
+}
+span.section {
+font-weight:bold;
+cursor:pointer;
+color:#003E69;
+white-space:nowrap;
+margin-left:0.3125em;
+}
+span:hover.section {
+color:#336699;
+}
+span.sect_aff {
+cursor:pointer;
+padding-left:1.55em;
+font-size:0.875em;
+color:#cc3300;
+}
+span.ext {
+font-weight:100;
+}
+span.jar {
+color:#cc3300;
+font-size:0.875em;
+font-weight:bold;
+}
+div.jar_list {
+padding-left:0.4em;
+font-size:0.94em;
+}
+span.pkg_t {
+color:#408080;
+font-size:0.875em;
+}
+span.pkg {
+color:#408080;
+font-size:0.875em;
+font-weight:bold;
+}
+span.cname {
+color:Green;
+font-size:0.875em;
+font-weight:bold;
+}
+span.iname_b {
+font-weight:bold;
+}
+span.iname_a {
+color:#33;
+font-weight:bold;
+font-size:0.94em;
+}
+span.sym_p {
+font-weight:normal;
+white-space:normal;
+}
+span.sym_pd {
+white-space:normal;
+}
+span.sym_p span, span.sym_pd span {
+white-space:nowrap;
+}
+span.attr {
+color:Black;
+font-weight:100;
+}
+span.deprecated {
+color:Red;
+font-weight:bold;
+font-family:Monaco, monospace;
+}
+div.affect {
+padding-left:1em;
+padding-bottom:10px;
+font-size:0.87em;
+font-style:italic;
+line-height:0.9em;
+}
+div.affected {
+padding-left:2em;
+padding-top:10px;
+}
+table.ptable {
+border-collapse:collapse;
+border:1px outset black;
+margin-left:0.95em;
+margin-top:3px;
+margin-bottom:3px;
+width:56.25em;
+}
+table.ptable td {
+border:1px solid Gray;
+padding:3px;
+font-size:0.875em;
+text-align:left;
+vertical-align:top;
+max-width:28em;
+word-wrap:break-word;
+}
+table.ptable th {
+background-color:#ee;
+font-weight:bold;
+color:#33;
+font-family:Verdana, Arial;
+font-size:0.875em;
+border:1px solid Gray;
+text-align:center;
+vertical-align:top;
+white-space:nowrap;
+padding:3px;
+}
+table.summary {
+border-collapse:collapse;
+border:1px outset black;
+}
+table.summary th {
+background-color:#ee;
+font-weight:100;
+text-align:left;
+font-size:0.94em;
+white-space:nowrap;
+border:1px inset Gray;
+padding:3px;
+}
+table.summary td {
+text-align:right;
+white-space:nowrap;
+border:1px inset Gray;
+padding:3px 5px 3px 10px;
+}
+span.mngl {
+padding-left:1em;
+font-size:0.875em;
+cursor:text;
+color:#44;
+font-weight:bold;
+}
+span.pleft {
+padding-left:2.5em;
+}
+span.color_p {
+font-style:italic;
+color:Brown;
+}
+span.param {
+font-style:italic;
+}
+span.focus_p {
+font-style:italic;
+background-color:#DCDCDC;
+}
+span.ttype {
+font-weight:100;
+}
+span.nowrap {
+white-space:nowrap;
+}
+span.value {
+white-space:nowrap;
+font-weight:bold;
+}
+.passed {
+background-color:#CCFFCC;
+font-weight:100;
+}
+.warning {
+background-color:#F4F4AF;
+font-weight:100;
+}
+.failed {
+background-color:#FF;
+font-weight:100;
+}
+.new {
+background-color:#C6DEFF;
+font-weight:100;
+}
+
+.compatible {
+background-color:#CCFFCC;
+font-weight:100;
+}
+.almost_compatible {
+background-color:#FFDAA3;
+font-weight:100;
+}
+.incompatible {
+background-color:#FF;
+font-weight:100;
+}
+.gray {

hbase git commit: HBASE-20049 Region replicas of SPLIT and MERGED regions are kept in in-memory states until restarting master

2018-02-22 Thread tedyu
Repository: hbase
Updated Branches:
  refs/heads/master 51f7b75f1 -> 1bc996aa5


HBASE-20049 Region replicas of SPLIT and MERGED regions are kept in in-memory 
states until restarting master

Signed-off-by: tedyu 


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

Branch: refs/heads/master
Commit: 1bc996aa505e4a064a5bdf6abd56f77591643072
Parents: 51f7b75
Author: Toshihiro Suzuki 
Authored: Thu Feb 22 17:45:51 2018 +0900
Committer: tedyu 
Committed: Thu Feb 22 20:06:21 2018 -0800

--
 .../src/main/protobuf/MasterProcedure.proto |  3 +-
 .../master/assignment/AssignmentManager.java| 10 -
 .../assignment/MergeTableRegionsProcedure.java  |  3 +-
 .../assignment/SplitTableRegionProcedure.java   |  3 +-
 .../master/assignment/UnassignProcedure.java| 39 ++--
 5 files changed, 49 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/1bc996aa/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
--
diff --git a/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto 
b/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
index 83099c3..1ab51e5 100644
--- a/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
+++ b/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
@@ -331,6 +331,7 @@ message UnassignRegionStateData {
   // server we will send the unassign rpc too.
   optional ServerName hosting_server = 5;
   optional bool force = 4 [default = false];
+  optional bool remove_after_unassigning = 6 [default = false];
 }
 
 enum MoveRegionState {
@@ -409,4 +410,4 @@ message AddPeerStateData {
 
 message UpdatePeerConfigStateData {
   required ReplicationPeer peer_config = 1;
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/hbase/blob/1bc996aa/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
index 97d8258..ff65f46 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
@@ -733,11 +733,17 @@ public class AssignmentManager implements ServerListener {
 
   UnassignProcedure createUnassignProcedure(final RegionInfo regionInfo,
   final ServerName destinationServer, final boolean force) {
+return createUnassignProcedure(regionInfo, destinationServer, force, 
false);
+  }
+
+  UnassignProcedure createUnassignProcedure(final RegionInfo regionInfo,
+  final ServerName destinationServer, final boolean force,
+  final boolean removeAfterUnassigning) {
 // If destinationServer is null, figure it.
 ServerName sn = destinationServer != null? destinationServer:
-  getRegionStates().getRegionState(regionInfo).getServerName();
+getRegionStates().getRegionState(regionInfo).getServerName();
 assert sn != null;
-UnassignProcedure proc = new UnassignProcedure(regionInfo, sn, force);
+UnassignProcedure proc = new UnassignProcedure(regionInfo, sn, force, 
removeAfterUnassigning);
 proc.setOwner(getProcedureEnvironment().getRequestUser().getShortName());
 return proc;
   }

http://git-wip-us.apache.org/repos/asf/hbase/blob/1bc996aa/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
index c65dbe5..1c448dc 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
@@ -682,7 +682,8 @@ public class MergeTableRegionsProcedure
 for (int i = 0; i < regionsToMerge.length; ++i) {
   for (int j = 0; j < regionReplication; ++j) {
 final RegionInfo hri = 
RegionReplicaUtil.getRegionInfoForReplica(regionsToMerge[i], j);
-procs[procsIdx++] = 
env.getAssignmentManager().createUnassignProcedure(hri,null,true);
+

hbase git commit: HBASE-20049 Region replicas of SPLIT and MERGED regions are kept in in-memory states until restarting master (Toshihiro Suzuki)

2018-02-22 Thread tedyu
Repository: hbase
Updated Branches:
  refs/heads/branch-2 991e163cc -> 8a22e4119


HBASE-20049 Region replicas of SPLIT and MERGED regions are kept in in-memory 
states until restarting master (Toshihiro Suzuki)


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

Branch: refs/heads/branch-2
Commit: 8a22e4119f511b0d149018e46db61f2166c7e8e7
Parents: 991e163
Author: tedyu 
Authored: Thu Feb 22 20:11:11 2018 -0800
Committer: tedyu 
Committed: Thu Feb 22 20:11:11 2018 -0800

--
 .../src/main/protobuf/MasterProcedure.proto |  1 +
 .../master/assignment/AssignmentManager.java| 10 -
 .../assignment/MergeTableRegionsProcedure.java  |  3 +-
 .../assignment/SplitTableRegionProcedure.java   |  3 +-
 .../master/assignment/UnassignProcedure.java| 39 ++--
 5 files changed, 48 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/8a22e411/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
--
diff --git a/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto 
b/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
index f9b8807..f988224 100644
--- a/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
+++ b/hbase-protocol-shaded/src/main/protobuf/MasterProcedure.proto
@@ -330,6 +330,7 @@ message UnassignRegionStateData {
   // server we will send the unassign rpc too.
   optional ServerName hosting_server = 5;
   optional bool force = 4 [default = false];
+  optional bool remove_after_unassigning = 6 [default = false];
 }
 
 enum MoveRegionState {

http://git-wip-us.apache.org/repos/asf/hbase/blob/8a22e411/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
index 97d8258..ff65f46 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
@@ -733,11 +733,17 @@ public class AssignmentManager implements ServerListener {
 
   UnassignProcedure createUnassignProcedure(final RegionInfo regionInfo,
   final ServerName destinationServer, final boolean force) {
+return createUnassignProcedure(regionInfo, destinationServer, force, 
false);
+  }
+
+  UnassignProcedure createUnassignProcedure(final RegionInfo regionInfo,
+  final ServerName destinationServer, final boolean force,
+  final boolean removeAfterUnassigning) {
 // If destinationServer is null, figure it.
 ServerName sn = destinationServer != null? destinationServer:
-  getRegionStates().getRegionState(regionInfo).getServerName();
+getRegionStates().getRegionState(regionInfo).getServerName();
 assert sn != null;
-UnassignProcedure proc = new UnassignProcedure(regionInfo, sn, force);
+UnassignProcedure proc = new UnassignProcedure(regionInfo, sn, force, 
removeAfterUnassigning);
 proc.setOwner(getProcedureEnvironment().getRequestUser().getShortName());
 return proc;
   }

http://git-wip-us.apache.org/repos/asf/hbase/blob/8a22e411/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
index c65dbe5..1c448dc 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/MergeTableRegionsProcedure.java
@@ -682,7 +682,8 @@ public class MergeTableRegionsProcedure
 for (int i = 0; i < regionsToMerge.length; ++i) {
   for (int j = 0; j < regionReplication; ++j) {
 final RegionInfo hri = 
RegionReplicaUtil.getRegionInfoForReplica(regionsToMerge[i], j);
-procs[procsIdx++] = 
env.getAssignmentManager().createUnassignProcedure(hri,null,true);
+procs[procsIdx++] = env.getAssignmentManager().
+createUnassignProcedure(hri, null, true, 
!RegionReplicaUtil.isDefaultReplica(hri));
   }
 }
 return procs;


hbase git commit: Update CHANGES.txt for 1.4.2 RC1

2018-02-22 Thread apurtell
Repository: hbase
Updated Branches:
  refs/heads/branch-1.4 08b993997 -> 20cb47c38


Update CHANGES.txt for 1.4.2 RC1


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

Branch: refs/heads/branch-1.4
Commit: 20cb47c38820d51af2ba0820ed83d0ca295400b7
Parents: 08b9939
Author: Andrew Purtell 
Authored: Wed Feb 21 13:20:50 2018 -0800
Committer: Andrew Purtell 
Committed: Thu Feb 22 15:49:45 2018 -0800

--
 CHANGES.txt | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/20cb47c3/CHANGES.txt
--
diff --git a/CHANGES.txt b/CHANGES.txt
index b50c118..c731d8a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,9 +1,10 @@
 HBase Change Log
 
-Release Notes - HBase - Version 1.4.2 2/23/2018
+Release Notes - HBase - Version 1.4.2 2/28/2018
 
 ** Sub-task
 * [HBASE-19877] - hbase-common and hbase-zookeeper don't add the 
log4j.properties to the resource path for testing
+* [HBASE-20008] - [backport] NullPointerException when restoring a 
snapshot after splitting a region
 
 ** Bug
 * [HBASE-18282] - ReplicationLogCleaner can delete WALs not yet replicated 
in case of a KeeperException
@@ -20,11 +21,14 @@ Release Notes - HBase - Version 1.4.2 2/23/2018
 * [HBASE-19979] - ReplicationSyncUp tool may leak Zookeeper connection
 * [HBASE-19981] - Boolean#getBoolean is used to parse value
 * [HBASE-19996] - Some nonce procs might not be cleaned up (follow up 
HBASE-19756)
+* [HBASE-20017] - BufferedMutatorImpl submit the same mutation repeatedly
+* [HBASE-20027] - Add test TestClusterPortAssignment
 
 ** New Feature
 * [HBASE-19886] - Display maintenance mode in shell, web UI
 
 ** Improvement
+* [HBASE-19770] - Add '--return-values' option to Shell to print return 
values of commands in interactive mode
 * [HBASE-19917] - Improve RSGroupBasedLoadBalancer#filterServers() to be 
more efficient
 
 ** Test



[1/2] hbase git commit: HBASE-19400 Add missing security checks in MasterRpcServices

2018-02-22 Thread appy
Repository: hbase
Updated Branches:
  refs/heads/branch-2 f3753e394 -> 991e163cc


HBASE-19400 Add missing security checks in MasterRpcServices

- Added ADMIN permission check for following rpc calls:
  normalize, setNormalizerRunning, runCatalogScan, enableCatalogJanitor, 
runCleanerChore,
  setCleanerChoreRunning, execMasterService, execProcedure, execProcedureWithRet
- Moved authorizationEnabled check to start of AccessChecker's functions. 
Currently, and IDK why,
  we call authManager.authorize() first and then discard its result if 
authorizationEnabled is false. Weird.


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

Branch: refs/heads/branch-2
Commit: 161f9de8e5e32c5fe3ea1dfb1c67802629ad1b23
Parents: f3753e3
Author: Apekshit Sharma 
Authored: Tue Feb 13 12:33:43 2018 -0800
Committer: Apekshit Sharma 
Committed: Thu Feb 22 16:23:43 2018 -0800

--
 .../hbase/rsgroup/RSGroupAdminEndpoint.java |   3 +-
 .../hadoop/hbase/master/MasterRpcServices.java  | 120 -
 .../hbase/regionserver/HRegionServer.java   |   2 +-
 .../hbase/regionserver/RSRpcServices.java   |  25 +-
 .../hbase/security/access/AccessChecker.java| 102 
 .../hbase/security/access/AccessController.java |   3 +-
 .../security/access/TestAccessController.java   |  13 +-
 .../access/TestAdminOnlyOperations.java | 244 +++
 8 files changed, 388 insertions(+), 124 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/161f9de8/hbase-rsgroup/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupAdminEndpoint.java
--
diff --git 
a/hbase-rsgroup/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupAdminEndpoint.java
 
b/hbase-rsgroup/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupAdminEndpoint.java
index fd632b1..ce74bb4 100644
--- 
a/hbase-rsgroup/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupAdminEndpoint.java
+++ 
b/hbase-rsgroup/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupAdminEndpoint.java
@@ -81,7 +81,6 @@ import org.apache.hadoop.hbase.security.User;
 import org.apache.hadoop.hbase.security.UserProvider;
 import org.apache.hadoop.hbase.security.access.AccessChecker;
 import org.apache.hadoop.hbase.security.access.Permission.Action;
-import org.apache.hadoop.hbase.security.access.TableAuthManager;
 import org.apache.hadoop.hbase.zookeeper.ZKWatcher;
 import org.apache.yetus.audience.InterfaceAudience;
 import org.slf4j.Logger;
@@ -128,7 +127,7 @@ public class RSGroupAdminEndpoint implements 
MasterCoprocessor, MasterObserver {
 
   @Override
   public void stop(CoprocessorEnvironment env) {
-TableAuthManager.release(accessChecker.getAuthManager());
+accessChecker.stop();
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/hbase/blob/161f9de8/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
index 907ca9b..20ca62d 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterRpcServices.java
@@ -85,6 +85,7 @@ import 
org.apache.hadoop.hbase.replication.ReplicationPeerDescription;
 import org.apache.hadoop.hbase.security.User;
 import org.apache.hadoop.hbase.security.access.AccessChecker;
 import org.apache.hadoop.hbase.security.access.AccessController;
+import org.apache.hadoop.hbase.security.access.Permission;
 import org.apache.hadoop.hbase.security.visibility.VisibilityController;
 import org.apache.hadoop.hbase.snapshot.ClientSnapshotDescriptionUtils;
 import org.apache.hadoop.hbase.snapshot.SnapshotDescriptionUtils;
@@ -345,6 +346,24 @@ public class MasterRpcServices extends RSRpcServices
 return new MasterAnnotationReadingPriorityFunction(this);
   }
 
+  /**
+   * Checks for the following pre-checks in order:
+   * 
+   *   Master is initialized
+   *   Rpc caller has admin permissions
+   * 
+   * @param requestName name of rpc request. Used in reporting failures to 
provide context.
+   * @throws ServiceException If any of the above listed pre-check fails.
+   */
+  private void rpcPreCheck(String requestName) throws ServiceException {
+try {
+  master.checkInitialized();
+  requirePermission(requestName, Permission.Action.ADMIN);
+} catch (IOException ioe) {
+  throw new 

[2/2] hbase git commit: HBASE-19401 Add missing security checks in RSRpcServices

2018-02-22 Thread appy
HBASE-19401 Add missing security checks in RSRpcServices


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

Branch: refs/heads/branch-2
Commit: 991e163cc271c691b5d0d9a871cb2ba75b7ba337
Parents: 161f9de
Author: Apekshit Sharma 
Authored: Tue Feb 13 12:33:43 2018 -0800
Committer: Apekshit Sharma 
Committed: Thu Feb 22 16:23:47 2018 -0800

--
 .../hbase/regionserver/RSRpcServices.java   | 22 +++-
 .../access/TestAdminOnlyOperations.java | 56 ++--
 2 files changed, 60 insertions(+), 18 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/991e163c/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
index 3efe0c6..33ee548 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
@@ -498,6 +498,24 @@ public class RSRpcServices implements HBaseRPCErrorHandler,
   }
 
   /**
+   * Checks for the following pre-checks in order:
+   * 
+   *   RegionServer is running
+   *   If authorization is enabled, then RPC caller has ADMIN 
permissions
+   * 
+   * @param requestName name of rpc request. Used in reporting failures to 
provide context.
+   * @throws ServiceException If any of the above listed pre-check fails.
+   */
+  private void rpcPreCheck(String requestName) throws ServiceException {
+try {
+  checkOpen();
+  requirePermission(requestName, Permission.Action.ADMIN);
+} catch (IOException ioe) {
+  throw new ServiceException(ioe);
+}
+  }
+
+  /**
* Starts the nonce operation for a mutation, if needed.
* @param mutation Mutation.
* @param nonceGroup Nonce group from the request.
@@ -1438,9 +1456,8 @@ public class RSRpcServices implements 
HBaseRPCErrorHandler,
 
   /**
* Called to verify that this server is up and running.
-   *
-   * @throws IOException
*/
+  // TODO : Rename this and HMaster#checkInitialized to isRunning() (or a 
better name).
   protected void checkOpen() throws IOException {
 if (regionServer.isAborted()) {
   throw new RegionServerAbortedException("Server " + 
regionServer.serverName + " aborting");
@@ -3432,6 +3449,7 @@ public class RSRpcServices implements 
HBaseRPCErrorHandler,
   @Override
   public CoprocessorServiceResponse execRegionServerService(RpcController 
controller,
   CoprocessorServiceRequest request) throws ServiceException {
+rpcPreCheck("execRegionServerService");
 return regionServer.execRegionServerService(controller, request);
   }
 

http://git-wip-us.apache.org/repos/asf/hbase/blob/991e163c/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
index d4b0650..42d2f36 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/security/access/TestAdminOnlyOperations.java
@@ -1,3 +1,4 @@
+
 /**
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -31,12 +32,14 @@ import java.util.HashMap;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hbase.HBaseClassTestRule;
 import org.apache.hadoop.hbase.HBaseTestingUtility;
+import org.apache.hadoop.hbase.ServerName;
 import org.apache.hadoop.hbase.TableName;
 import org.apache.hadoop.hbase.client.Admin;
 import org.apache.hadoop.hbase.client.Connection;
 import org.apache.hadoop.hbase.client.ConnectionFactory;
 import org.apache.hadoop.hbase.coprocessor.CoprocessorHost;
 import org.apache.hadoop.hbase.coprocessor.MasterCoprocessor;
+import org.apache.hadoop.hbase.coprocessor.RegionServerCoprocessor;
 import org.apache.hadoop.hbase.ipc.protobuf.generated.TestProtos;
 import org.apache.hadoop.hbase.ipc.protobuf.generated.TestRpcServiceProtos;
 import org.apache.hadoop.hbase.security.AccessDeniedException;
@@ -88,7 +91,7 @@ public class TestAdminOnlyOperations {
   private static User USER_GROUP_ADMIN;
 
   // Dummy 

[2/2] hbase git commit: HBASE-20048 Revert serial replication feature

2018-02-22 Thread zhangduo
HBASE-20048 Revert serial replication feature


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

Branch: refs/heads/master
Commit: ad5cd50dfcc34d997a13e6e7fef9abd160893950
Parents: 1bc996a
Author: zhangduo 
Authored: Fri Feb 23 08:51:37 2018 +0800
Committer: zhangduo 
Committed: Fri Feb 23 13:58:31 2018 +0800

--
 .../apache/hadoop/hbase/HTableDescriptor.java   |   8 -
 .../apache/hadoop/hbase/MetaTableAccessor.java  | 296 ++
 .../hadoop/hbase/client/TableDescriptor.java|   9 +-
 .../hbase/client/TableDescriptorBuilder.java|  17 +-
 .../client/replication/ReplicationAdmin.java|  10 +-
 .../client/TestTableDescriptorBuilder.java  |  25 +-
 .../org/apache/hadoop/hbase/HConstants.java |  33 --
 .../src/main/resources/hbase-default.xml|  13 -
 hbase-protocol/src/main/protobuf/WAL.proto  |   1 -
 .../org/apache/hadoop/hbase/master/HMaster.java |   6 -
 .../master/assignment/RegionStateStore.java |  23 +-
 .../master/cleaner/ReplicationMetaCleaner.java  | 191 -
 .../hbase/regionserver/HRegionServer.java   |  77 ++--
 .../hbase/regionserver/wal/FSWALEntry.java  |   1 +
 .../RecoveredReplicationSourceShipper.java  |   3 +-
 .../regionserver/ReplicationSourceManager.java  | 113 --
 .../regionserver/ReplicationSourceShipper.java  |  76 +---
 .../ReplicationSourceWALReader.java |  52 +--
 .../hbase/snapshot/RestoreSnapshotHelper.java   |   2 +-
 .../hadoop/hbase/util/FSTableDescriptors.java   |  30 --
 .../java/org/apache/hadoop/hbase/wal/WAL.java   |  19 +-
 .../hadoop/hbase/TestMetaTableAccessor.java |  10 +-
 .../regionserver/TestRegionServerMetrics.java   |   2 +-
 .../replication/TestSerialReplication.java  | 400 ---
 .../regionserver/TestGlobalThrottler.java   |   2 +-
 src/main/asciidoc/_chapters/ops_mgt.adoc|  41 +-
 26 files changed, 84 insertions(+), 1376 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/ad5cd50d/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
--
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
index c9807c3..e512b2c 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
@@ -538,14 +538,6 @@ public class HTableDescriptor implements TableDescriptor, 
Comparablehttp://git-wip-us.apache.org/repos/asf/hbase/blob/ad5cd50d/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
--
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
index dad9aef..7d00f92 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
@@ -17,13 +17,14 @@
  */
 package org.apache.hadoop.hbase;
 
+import edu.umd.cs.findbugs.annotations.NonNull;
+import edu.umd.cs.findbugs.annotations.Nullable;
 import java.io.Closeable;
 import java.io.IOException;
 import java.io.InterruptedIOException;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
-import java.util.HashMap;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
@@ -33,7 +34,6 @@ import java.util.SortedMap;
 import java.util.TreeMap;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hbase.Cell.Type;
 import org.apache.hadoop.hbase.client.Connection;
@@ -71,9 +71,8 @@ import org.apache.hadoop.hbase.util.PairOfSameType;
 import org.apache.yetus.audience.InterfaceAudience;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+
 import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-import edu.umd.cs.findbugs.annotations.NonNull;
-import edu.umd.cs.findbugs.annotations.Nullable;
 
 /**
  * Read/write operations on region and assignment information store in
@@ -123,34 +122,14 @@ public class MetaTableAccessor {
* region is the result of a merge
* info:mergeB  => contains a serialized HRI for the second 
parent region if the
* region is the result of a merge
+   *
* The actual 

[1/2] hbase git commit: HBASE-20048 Revert serial replication feature

2018-02-22 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/branch-2 8a22e4119 -> 4ddfdaffd


http://git-wip-us.apache.org/repos/asf/hbase/blob/4ddfdaff/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
deleted file mode 100644
index 88513ea..000
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
+++ /dev/null
@@ -1,400 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.hadoop.hbase.replication;
-
-import static org.junit.Assert.assertEquals;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hbase.Cell;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
-import org.apache.hadoop.hbase.HBaseConfiguration;
-import org.apache.hadoop.hbase.HBaseTestingUtility;
-import org.apache.hadoop.hbase.HColumnDescriptor;
-import org.apache.hadoop.hbase.HConstants;
-import org.apache.hadoop.hbase.HTableDescriptor;
-import org.apache.hadoop.hbase.HTestConst;
-import org.apache.hadoop.hbase.MetaTableAccessor;
-import org.apache.hadoop.hbase.ServerName;
-import org.apache.hadoop.hbase.TableName;
-import org.apache.hadoop.hbase.client.Put;
-import org.apache.hadoop.hbase.client.RegionInfo;
-import org.apache.hadoop.hbase.client.Result;
-import org.apache.hadoop.hbase.client.ResultScanner;
-import org.apache.hadoop.hbase.client.Scan;
-import org.apache.hadoop.hbase.client.Table;
-import org.apache.hadoop.hbase.client.replication.ReplicationAdmin;
-import org.apache.hadoop.hbase.coprocessor.CoprocessorHost;
-import org.apache.hadoop.hbase.testclassification.LargeTests;
-import org.apache.hadoop.hbase.testclassification.ReplicationTests;
-import org.apache.hadoop.hbase.util.Bytes;
-import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;
-import org.apache.hadoop.hbase.util.Pair;
-import org.apache.hadoop.hbase.util.Threads;
-import org.apache.hadoop.hbase.zookeeper.MiniZooKeeperCluster;
-import org.apache.hadoop.hbase.zookeeper.ZKWatcher;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-@Category({ ReplicationTests.class, LargeTests.class })
-public class TestSerialReplication {
-
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-  HBaseClassTestRule.forClass(TestSerialReplication.class);
-
-  private static final Logger LOG = 
LoggerFactory.getLogger(TestSerialReplication.class);
-
-  private static Configuration conf1;
-  private static Configuration conf2;
-
-  private static HBaseTestingUtility utility1;
-  private static HBaseTestingUtility utility2;
-
-  private static final byte[] famName = Bytes.toBytes("f");
-  private static final byte[] VALUE = Bytes.toBytes("v");
-  private static final byte[] ROW = Bytes.toBytes("r");
-  private static final byte[][] ROWS = HTestConst.makeNAscii(ROW, 100);
-
-  @Rule
-  public TestName name = new TestName();
-
-  @BeforeClass
-  public static void setUpBeforeClass() throws Exception {
-conf1 = HBaseConfiguration.create();
-conf1.set(HConstants.ZOOKEEPER_ZNODE_PARENT, "/1");
-// smaller block size and capacity to trigger more operations
-// and test them
-conf1.setInt("hbase.regionserver.hlog.blocksize", 1024 * 20);
-conf1.setInt("replication.source.size.capacity", 1024);
-conf1.setLong("replication.source.sleepforretries", 100);
-conf1.setInt("hbase.regionserver.maxlogs", 10);
-conf1.setLong("hbase.master.logcleaner.ttl", 10);
-conf1.setBoolean("dfs.support.append", true);
-conf1.setLong(HConstants.THREAD_WAKE_FREQUENCY, 100);
-conf1.setStrings(CoprocessorHost.USER_REGION_COPROCESSOR_CONF_KEY,
-

[1/2] hbase git commit: HBASE-20048 Revert serial replication feature

2018-02-22 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/master 1bc996aa5 -> ad5cd50df


http://git-wip-us.apache.org/repos/asf/hbase/blob/ad5cd50d/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
deleted file mode 100644
index 88513ea..000
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
+++ /dev/null
@@ -1,400 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.hadoop.hbase.replication;
-
-import static org.junit.Assert.assertEquals;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hbase.Cell;
-import org.apache.hadoop.hbase.HBaseClassTestRule;
-import org.apache.hadoop.hbase.HBaseConfiguration;
-import org.apache.hadoop.hbase.HBaseTestingUtility;
-import org.apache.hadoop.hbase.HColumnDescriptor;
-import org.apache.hadoop.hbase.HConstants;
-import org.apache.hadoop.hbase.HTableDescriptor;
-import org.apache.hadoop.hbase.HTestConst;
-import org.apache.hadoop.hbase.MetaTableAccessor;
-import org.apache.hadoop.hbase.ServerName;
-import org.apache.hadoop.hbase.TableName;
-import org.apache.hadoop.hbase.client.Put;
-import org.apache.hadoop.hbase.client.RegionInfo;
-import org.apache.hadoop.hbase.client.Result;
-import org.apache.hadoop.hbase.client.ResultScanner;
-import org.apache.hadoop.hbase.client.Scan;
-import org.apache.hadoop.hbase.client.Table;
-import org.apache.hadoop.hbase.client.replication.ReplicationAdmin;
-import org.apache.hadoop.hbase.coprocessor.CoprocessorHost;
-import org.apache.hadoop.hbase.testclassification.LargeTests;
-import org.apache.hadoop.hbase.testclassification.ReplicationTests;
-import org.apache.hadoop.hbase.util.Bytes;
-import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;
-import org.apache.hadoop.hbase.util.Pair;
-import org.apache.hadoop.hbase.util.Threads;
-import org.apache.hadoop.hbase.zookeeper.MiniZooKeeperCluster;
-import org.apache.hadoop.hbase.zookeeper.ZKWatcher;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-import org.junit.rules.TestName;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-@Category({ ReplicationTests.class, LargeTests.class })
-public class TestSerialReplication {
-
-  @ClassRule
-  public static final HBaseClassTestRule CLASS_RULE =
-  HBaseClassTestRule.forClass(TestSerialReplication.class);
-
-  private static final Logger LOG = 
LoggerFactory.getLogger(TestSerialReplication.class);
-
-  private static Configuration conf1;
-  private static Configuration conf2;
-
-  private static HBaseTestingUtility utility1;
-  private static HBaseTestingUtility utility2;
-
-  private static final byte[] famName = Bytes.toBytes("f");
-  private static final byte[] VALUE = Bytes.toBytes("v");
-  private static final byte[] ROW = Bytes.toBytes("r");
-  private static final byte[][] ROWS = HTestConst.makeNAscii(ROW, 100);
-
-  @Rule
-  public TestName name = new TestName();
-
-  @BeforeClass
-  public static void setUpBeforeClass() throws Exception {
-conf1 = HBaseConfiguration.create();
-conf1.set(HConstants.ZOOKEEPER_ZNODE_PARENT, "/1");
-// smaller block size and capacity to trigger more operations
-// and test them
-conf1.setInt("hbase.regionserver.hlog.blocksize", 1024 * 20);
-conf1.setInt("replication.source.size.capacity", 1024);
-conf1.setLong("replication.source.sleepforretries", 100);
-conf1.setInt("hbase.regionserver.maxlogs", 10);
-conf1.setLong("hbase.master.logcleaner.ttl", 10);
-conf1.setBoolean("dfs.support.append", true);
-conf1.setLong(HConstants.THREAD_WAKE_FREQUENCY, 100);
-conf1.setStrings(CoprocessorHost.USER_REGION_COPROCESSOR_CONF_KEY,
-

[2/2] hbase git commit: HBASE-20048 Revert serial replication feature

2018-02-22 Thread zhangduo
HBASE-20048 Revert serial replication feature


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

Branch: refs/heads/branch-2
Commit: 4ddfdaffdcf83d50aac26fcff5e1ac4ecd575335
Parents: 8a22e41
Author: zhangduo 
Authored: Fri Feb 23 08:51:37 2018 +0800
Committer: zhangduo 
Committed: Fri Feb 23 13:54:10 2018 +0800

--
 .../apache/hadoop/hbase/HTableDescriptor.java   |   8 -
 .../apache/hadoop/hbase/MetaTableAccessor.java  | 296 ++
 .../hadoop/hbase/client/TableDescriptor.java|   9 +-
 .../hbase/client/TableDescriptorBuilder.java|  17 +-
 .../client/replication/ReplicationAdmin.java|  10 +-
 .../client/TestTableDescriptorBuilder.java  |  25 +-
 .../org/apache/hadoop/hbase/HConstants.java |  33 --
 .../src/main/resources/hbase-default.xml|  13 -
 hbase-protocol/src/main/protobuf/WAL.proto  |   1 -
 .../org/apache/hadoop/hbase/master/HMaster.java |   8 +-
 .../master/assignment/RegionStateStore.java |  23 +-
 .../master/cleaner/ReplicationMetaCleaner.java  | 191 -
 .../hbase/regionserver/HRegionServer.java   |  77 ++--
 .../hbase/regionserver/wal/FSWALEntry.java  |   1 +
 .../RecoveredReplicationSourceShipper.java  |   3 +-
 .../regionserver/ReplicationSourceManager.java  | 121 +-
 .../regionserver/ReplicationSourceShipper.java  |  76 +---
 .../ReplicationSourceWALReader.java |  52 +--
 .../hbase/snapshot/RestoreSnapshotHelper.java   |   2 +-
 .../hadoop/hbase/util/FSTableDescriptors.java   |  30 --
 .../java/org/apache/hadoop/hbase/wal/WAL.java   |  19 +-
 .../hadoop/hbase/TestMetaTableAccessor.java |  10 +-
 .../regionserver/TestRegionServerMetrics.java   |   2 +-
 .../replication/TestSerialReplication.java  | 400 ---
 .../regionserver/TestGlobalThrottler.java   |   2 +-
 src/main/asciidoc/_chapters/ops_mgt.adoc|  41 +-
 26 files changed, 87 insertions(+), 1383 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/4ddfdaff/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
--
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
index c9807c3..e512b2c 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
@@ -538,14 +538,6 @@ public class HTableDescriptor implements TableDescriptor, 
Comparablehttp://git-wip-us.apache.org/repos/asf/hbase/blob/4ddfdaff/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
--
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
index dad9aef..7d00f92 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
@@ -17,13 +17,14 @@
  */
 package org.apache.hadoop.hbase;
 
+import edu.umd.cs.findbugs.annotations.NonNull;
+import edu.umd.cs.findbugs.annotations.Nullable;
 import java.io.Closeable;
 import java.io.IOException;
 import java.io.InterruptedIOException;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
-import java.util.HashMap;
 import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
@@ -33,7 +34,6 @@ import java.util.SortedMap;
 import java.util.TreeMap;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
-
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hbase.Cell.Type;
 import org.apache.hadoop.hbase.client.Connection;
@@ -71,9 +71,8 @@ import org.apache.hadoop.hbase.util.PairOfSameType;
 import org.apache.yetus.audience.InterfaceAudience;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+
 import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-import edu.umd.cs.findbugs.annotations.NonNull;
-import edu.umd.cs.findbugs.annotations.Nullable;
 
 /**
  * Read/write operations on region and assignment information store in
@@ -123,34 +122,14 @@ public class MetaTableAccessor {
* region is the result of a merge
* info:mergeB  => contains a serialized HRI for the second 
parent region if the
* region is the result of a merge
+   *
* The 

[3/3] hbase git commit: Revert "HBASE-9465 Push entries to peer clusters serially"

2018-02-22 Thread zhangduo
Revert "HBASE-9465 Push entries to peer clusters serially"

This reverts commit 441bc050b991c14c048617bc443b97f46e21b76f.

 Conflicts:

hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java

hbase-client/src/main/java/org/apache/hadoop/hbase/client/replication/ReplicationAdmin.java

hbase-protocol/src/main/java/org/apache/hadoop/hbase/protobuf/generated/WALProtos.java
hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/Replication.java

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java

Signed-off-by: Andrew Purtell 


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

Branch: refs/heads/branch-1
Commit: ba7a936f74985eb9d974fdc87b0d06cb8cd8473d
Parents: 0a284d2
Author: Sean Busbey 
Authored: Tue Nov 7 23:50:35 2017 -0600
Committer: zhangduo 
Committed: Fri Feb 23 14:42:15 2018 +0800

--
 .../apache/hadoop/hbase/HTableDescriptor.java   |  46 +--
 .../apache/hadoop/hbase/MetaTableAccessor.java  | 243 ++-
 .../client/replication/ReplicationAdmin.java|  14 +-
 .../org/apache/hadoop/hbase/HConstants.java |  26 --
 .../src/main/resources/hbase-default.xml|  14 -
 .../hbase/protobuf/generated/WALProtos.java |  16 +-
 hbase-protocol/src/main/protobuf/WAL.proto  |   1 -
 .../org/apache/hadoop/hbase/master/HMaster.java |   9 -
 .../hadoop/hbase/master/RegionStateStore.java   |  43 +-
 .../master/cleaner/ReplicationMetaCleaner.java  | 187 -
 .../RegionMergeTransactionImpl.java |   3 +-
 .../hbase/regionserver/ReplicationService.java  |   1 -
 .../regionserver/SplitTransactionImpl.java  |   2 +-
 .../replication/regionserver/Replication.java   |  14 +-
 .../regionserver/ReplicationSource.java |  68 +---
 .../regionserver/ReplicationSourceManager.java  |  87 +---
 .../ReplicationSourceWALReaderThread.java   |  31 --
 .../java/org/apache/hadoop/hbase/wal/WAL.java   |  13 -
 .../hadoop/hbase/TestMetaTableAccessor.java |  10 +-
 .../hadoop/hbase/client/TestMetaScanner.java|   2 +-
 .../master/TestAssignmentManagerOnCluster.java  |   2 +-
 .../replication/TestSerialReplication.java  | 401 ---
 .../regionserver/TestGlobalThrottler.java   |   2 +-
 23 files changed, 69 insertions(+), 1166 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/ba7a936f/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
--
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
index 1fd950a..7f48976 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
@@ -34,12 +34,13 @@ import java.util.TreeMap;
 import java.util.TreeSet;
 import java.util.regex.Matcher;
 
+import org.apache.hadoop.hbase.util.ByteStringer;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
-import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.hbase.classification.InterfaceAudience;
 import org.apache.hadoop.hbase.classification.InterfaceStability;
+import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.hbase.client.Durability;
 import org.apache.hadoop.hbase.client.RegionReplicaUtil;
 import org.apache.hadoop.hbase.exceptions.DeserializationException;
@@ -51,7 +52,6 @@ import 
org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.NameStringPair;
 import org.apache.hadoop.hbase.protobuf.generated.HBaseProtos.TableSchema;
 import org.apache.hadoop.hbase.regionserver.BloomType;
 import org.apache.hadoop.hbase.security.User;
-import org.apache.hadoop.hbase.util.ByteStringer;
 import org.apache.hadoop.hbase.util.Bytes;
 import org.apache.hadoop.hbase.util.Writables;
 import org.apache.hadoop.io.WritableComparable;
@@ -1217,18 +1217,6 @@ public class HTableDescriptor implements 
WritableComparable {
   }
 
   /**
-   * Return true if there are at least one cf whose replication scope is 
serial.
-   */
-  public boolean hasSerialReplicationScope() {
-for (HColumnDescriptor column: getFamilies()){
-  if (column.getScope() == HConstants.REPLICATION_SCOPE_SERIAL){
-return true;
-  }
-}
-return 

[1/3] hbase git commit: Revert "HBASE-17010 Serial replication should handle daughter regions being assigned to another RS (Phil Yang)"

2018-02-22 Thread zhangduo
Repository: hbase
Updated Branches:
  refs/heads/branch-1 4d9589b16 -> ba7a936f7


Revert "HBASE-17010 Serial replication should handle daughter regions being 
assigned to another RS (Phil Yang)"

This reverts commit 97276da9a7cefc0472c487b60e4b6a03dc81610a.

Signed-off-by: Andrew Purtell 


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

Branch: refs/heads/branch-1
Commit: 0a284d2b76ceb775ff1f916a45633e74a261c5b8
Parents: 4d9589b
Author: Sean Busbey 
Authored: Tue Nov 7 17:02:13 2017 -0600
Committer: zhangduo 
Committed: Fri Feb 23 14:42:04 2018 +0800

--
 .../apache/hadoop/hbase/HTableDescriptor.java   | 12 
 .../apache/hadoop/hbase/MetaTableAccessor.java  | 58 ++--
 .../org/apache/hadoop/hbase/HConstants.java | 11 +---
 .../master/cleaner/ReplicationMetaCleaner.java  |  1 -
 4 files changed, 32 insertions(+), 50 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/0a284d2b/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
--
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
index fbb9376..1fd950a 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/HTableDescriptor.java
@@ -1797,18 +1797,6 @@ public class HTableDescriptor implements 
WritableComparable {
   // Enable cache of data blocks in L1 if more than one caching 
tier deployed:
   // e.g. if using CombinedBlockCache (BucketCache).
   .setCacheDataInL1(true),
-  new HColumnDescriptor(HConstants.REPLICATION_META_FAMILY)
-  .setMaxVersions(conf.getInt(HConstants.HBASE_META_VERSIONS,
-  HConstants.DEFAULT_HBASE_META_VERSIONS))
-  .setInMemory(true)
-  .setBlocksize(conf.getInt(HConstants.HBASE_META_BLOCK_SIZE,
-  HConstants.DEFAULT_HBASE_META_BLOCK_SIZE))
-  .setScope(HConstants.REPLICATION_SCOPE_LOCAL)
-  // Disable blooms for meta.  Needs work.  Seems to mess w/ 
getClosestOrBefore.
-  .setBloomFilterType(BloomType.NONE)
-  // Enable cache of data blocks in L1 if more than one caching 
tier deployed:
-  // e.g. if using CombinedBlockCache (BucketCache).
-  .setCacheDataInL1(true),
   });
 metaDescriptor.addCoprocessor(
   "org.apache.hadoop.hbase.coprocessor.MultiRowMutationEndpoint",

http://git-wip-us.apache.org/repos/asf/hbase/blob/0a284d2b/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
--
diff --git 
a/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java 
b/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
index 2bc98be..c7e3757 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/MetaTableAccessor.java
@@ -110,14 +110,14 @@ public class MetaTableAccessor {
* The actual layout of meta should be encapsulated inside MetaTableAccessor 
methods,
* and should not leak out of it (through Result objects, etc)
*
-   * For replication serially, there are three column families "rep_barrier", 
"rep_position" and
-   * "rep_meta" whose row key is encodedRegionName.
+   * For replication serially, there are two column families "rep_barrier", 
"rep_position" whose
+   * row key is encodedRegionName.
* rep_barrier:{seqid}  => in each time a RS opens a region, it saves 
the open sequence
*  id in this region
* rep_position:{peerid}=> to save the max sequence id we have pushed 
for each peer
-   * rep_meta:_TABLENAME_ => a special cell to save this region's table 
name, will used when
+   * rep_position:_TABLENAME_ => a special cell to save this region's table 
name, will used when
* we clean old data
-   * rep_meta:_DAUGHTER_  => a special cell to present this region is 
split or merged, in this
+   * rep_position:_DAUGHTER_  => a special cell to present this region is 
split or merged, in this
* cell the value is merged encoded name or two 
split encoded names
* separated by ","
*/
@@ -125,10 +125,10 @@ public class MetaTableAccessor {
   

[2/3] hbase git commit: Revert "HBASE-9465 Push entries to peer clusters serially"

2018-02-22 Thread zhangduo
http://git-wip-us.apache.org/repos/asf/hbase/blob/ba7a936f/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
deleted file mode 100644
index b0f687c..000
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestSerialReplication.java
+++ /dev/null
@@ -1,401 +0,0 @@
-/*
- * Copyright The Apache Software Foundation
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.hadoop.hbase.replication;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.apache.hadoop.conf.Configuration;
-import org.apache.hadoop.hbase.Cell;
-import org.apache.hadoop.hbase.HBaseConfiguration;
-import org.apache.hadoop.hbase.HBaseTestingUtility;
-import org.apache.hadoop.hbase.HColumnDescriptor;
-import org.apache.hadoop.hbase.HConstants;
-import org.apache.hadoop.hbase.HRegionInfo;
-import org.apache.hadoop.hbase.HTableDescriptor;
-import org.apache.hadoop.hbase.HTestConst;
-import org.apache.hadoop.hbase.MetaTableAccessor;
-import org.apache.hadoop.hbase.ServerName;
-import org.apache.hadoop.hbase.TableName;
-import org.apache.hadoop.hbase.client.Put;
-import org.apache.hadoop.hbase.client.Result;
-import org.apache.hadoop.hbase.client.ResultScanner;
-import org.apache.hadoop.hbase.client.Scan;
-import org.apache.hadoop.hbase.client.Table;
-import org.apache.hadoop.hbase.client.replication.ReplicationAdmin;
-import org.apache.hadoop.hbase.coprocessor.CoprocessorHost;
-import org.apache.hadoop.hbase.testclassification.LargeTests;
-import org.apache.hadoop.hbase.testclassification.ReplicationTests;
-import org.apache.hadoop.hbase.util.Bytes;
-import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;
-import org.apache.hadoop.hbase.util.Pair;
-import org.apache.hadoop.hbase.zookeeper.MiniZooKeeperCluster;
-import org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-@Category({ ReplicationTests.class, LargeTests.class })
-public class TestSerialReplication {
-  private static final Log LOG = 
LogFactory.getLog(TestSerialReplication.class);
-
-  private static Configuration conf1;
-  private static Configuration conf2;
-
-  private static HBaseTestingUtility utility1;
-  private static HBaseTestingUtility utility2;
-
-  private static final byte[] famName = Bytes.toBytes("f");
-  private static final byte[] VALUE = Bytes.toBytes("v");
-  private static final byte[] ROW = Bytes.toBytes("r");
-  private static final byte[][] ROWS = HTestConst.makeNAscii(ROW, 100);
-
-  @BeforeClass
-  public static void setUpBeforeClass() throws Exception {
-conf1 = HBaseConfiguration.create();
-conf1.set(HConstants.ZOOKEEPER_ZNODE_PARENT, "/1");
-// smaller block size and capacity to trigger more operations
-// and test them
-conf1.setInt("hbase.regionserver.hlog.blocksize", 1024 * 20);
-conf1.setInt("replication.source.size.capacity", 1024);
-conf1.setLong("replication.source.sleepforretries", 100);
-conf1.setInt("hbase.regionserver.maxlogs", 10);
-conf1.setLong("hbase.master.logcleaner.ttl", 10);
-conf1.setBoolean("dfs.support.append", true);
-conf1.setLong(HConstants.THREAD_WAKE_FREQUENCY, 100);
-conf1.setStrings(CoprocessorHost.USER_REGION_COPROCESSOR_CONF_KEY,
-
"org.apache.hadoop.hbase.replication.TestMasterReplication$CoprocessorCounter");
-conf1.setLong("replication.source.per.peer.node.bandwidth", 100L);// Each 
WAL is 120 bytes
-conf1.setLong("replication.source.size.capacity", 1L);
-conf1.setLong(HConstants.REPLICATION_SERIALLY_WAITING_KEY, 1000L);
-conf1.setBoolean("hbase.assignment.usezk", 

[1/2] hbase git commit: HBASE-20035 Stabilize the flaky TestQuotaStatusRPCs

2018-02-22 Thread elserj
Repository: hbase
Updated Branches:
  refs/heads/branch-2 0432d49d8 -> 9d3eadd92
  refs/heads/master 2440f807b -> 4cf846d08


HBASE-20035 Stabilize the flaky TestQuotaStatusRPCs

The test will fail if the quota moves to violation before
the second half of the test.

Signed-off-by: Michael Stack 


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

Branch: refs/heads/branch-2
Commit: 9d3eadd924043a825f1a7efd48f5aefd3117ee5c
Parents: 0432d49
Author: Josh Elser 
Authored: Wed Feb 21 17:17:57 2018 -0500
Committer: Josh Elser 
Committed: Thu Feb 22 09:34:05 2018 -0500

--
 .../hadoop/hbase/quotas/TestQuotaStatusRPCs.java   | 13 +++--
 1 file changed, 11 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/9d3eadd9/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
index dffa637..3e14b8a 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
@@ -199,8 +199,11 @@ public class TestQuotaStatusRPCs {
 
   @Test
   public void testQuotaStatusFromMaster() throws Exception {
-final long sizeLimit = 1024L * 10L; // 10KB
-final long tableSize = 1024L * 5; // 5KB
+final long sizeLimit = 1024L * 25L; // 25KB
+// As of 2.0.0-beta-2, this 1KB of "Cells" actually results in about 15KB 
on disk (HFiles)
+// This is skewed a bit since we're writing such little data, so the test 
needs to keep
+// this in mind; else, the quota will be in violation before the test 
expects it to be.
+final long tableSize = 1024L * 1; // 1KB
 final long nsLimit = Long.MAX_VALUE;
 final int numRegions = 10;
 final TableName tn = helper.createTableWithRegions(numRegions);
@@ -245,6 +248,12 @@ public class TestQuotaStatusRPCs {
   }
 });
 
+// Sanity check: the below assertions will fail if we somehow write too 
much data
+// and force the table to move into violation before we write the second 
bit of data.
+SpaceQuotaSnapshot snapshot = QuotaTableUtil.getCurrentSnapshot(conn, tn);
+assertTrue("QuotaSnapshot for " + tn + " should be non-null and not in 
violation",
+snapshot != null && !snapshot.getQuotaStatus().isInViolation());
+
 try {
   helper.writeData(tn, tableSize * 2L);
 } catch (RetriesExhaustedWithDetailsException | SpaceLimitingException e) {



[2/2] hbase git commit: HBASE-20035 Stabilize the flaky TestQuotaStatusRPCs

2018-02-22 Thread elserj
HBASE-20035 Stabilize the flaky TestQuotaStatusRPCs

The test will fail if the quota moves to violation before
the second half of the test.

Signed-off-by: Michael Stack 


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

Branch: refs/heads/master
Commit: 4cf846d08570256115ac8c2787d0f7fbf162be23
Parents: 2440f80
Author: Josh Elser 
Authored: Wed Feb 21 17:17:57 2018 -0500
Committer: Josh Elser 
Committed: Thu Feb 22 09:40:20 2018 -0500

--
 .../hadoop/hbase/quotas/TestQuotaStatusRPCs.java   | 13 +++--
 1 file changed, 11 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/4cf846d0/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
index dffa637..3e14b8a 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaStatusRPCs.java
@@ -199,8 +199,11 @@ public class TestQuotaStatusRPCs {
 
   @Test
   public void testQuotaStatusFromMaster() throws Exception {
-final long sizeLimit = 1024L * 10L; // 10KB
-final long tableSize = 1024L * 5; // 5KB
+final long sizeLimit = 1024L * 25L; // 25KB
+// As of 2.0.0-beta-2, this 1KB of "Cells" actually results in about 15KB 
on disk (HFiles)
+// This is skewed a bit since we're writing such little data, so the test 
needs to keep
+// this in mind; else, the quota will be in violation before the test 
expects it to be.
+final long tableSize = 1024L * 1; // 1KB
 final long nsLimit = Long.MAX_VALUE;
 final int numRegions = 10;
 final TableName tn = helper.createTableWithRegions(numRegions);
@@ -245,6 +248,12 @@ public class TestQuotaStatusRPCs {
   }
 });
 
+// Sanity check: the below assertions will fail if we somehow write too 
much data
+// and force the table to move into violation before we write the second 
bit of data.
+SpaceQuotaSnapshot snapshot = QuotaTableUtil.getCurrentSnapshot(conn, tn);
+assertTrue("QuotaSnapshot for " + tn + " should be non-null and not in 
violation",
+snapshot != null && !snapshot.getQuotaStatus().isInViolation());
+
 try {
   helper.writeData(tn, tableSize * 2L);
 } catch (RetriesExhaustedWithDetailsException | SpaceLimitingException e) {