hbase git commit: HBASE-21348 Fix failing TestRegionBypass, broke by HBASE-21291

2018-10-19 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2.0 06d6fe3a9 -> 590865524


HBASE-21348 Fix failing TestRegionBypass, broke by HBASE-21291


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

Branch: refs/heads/branch-2.0
Commit: 59086552449bbd6efaf3b2e64344a1fcfd4630f2
Parents: 06d6fe3
Author: Michael Stack 
Authored: Fri Oct 19 17:30:19 2018 -0700
Committer: Michael Stack 
Committed: Fri Oct 19 21:29:11 2018 -0700

--
 .../apache/hadoop/hbase/master/assignment/TestRegionBypass.java| 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/59086552/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
index 4da60e2..d55e416 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
@@ -107,7 +107,7 @@ public class TestRegionBypass {
 for (Procedure p: ps) {
   if (p instanceof StallingAssignProcedure) {
 List bs = TEST_UTIL.getHbck().
-bypassProcedure(Arrays.asList(p.getProcId()), 0, false, 
false);
+bypassProcedure(Arrays.asList(p.getProcId()), 1, false, 
false);
 for (Boolean b: bs) {
   LOG.info("BYPASSED {} {}", p.getProcId(), b);
 }



hbase git commit: HBASE-21348 Fix failing TestRegionBypass, broke by HBASE-21291

2018-10-19 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2.1 4ad63d77b -> b3a11b78f


HBASE-21348 Fix failing TestRegionBypass, broke by HBASE-21291


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

Branch: refs/heads/branch-2.1
Commit: b3a11b78f70a87cc77197a09327c5985dd26c8a6
Parents: 4ad63d7
Author: Michael Stack 
Authored: Fri Oct 19 17:30:19 2018 -0700
Committer: Michael Stack 
Committed: Fri Oct 19 21:27:54 2018 -0700

--
 .../apache/hadoop/hbase/master/assignment/TestRegionBypass.java| 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/b3a11b78/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
index 4bc9f27..c90bdbc 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
@@ -107,7 +107,7 @@ public class TestRegionBypass {
 for (Procedure p: ps) {
   if (p instanceof StallingAssignProcedure) {
 List bs = TEST_UTIL.getHbck().
-bypassProcedure(Arrays.asList(p.getProcId()), 0, false, 
false);
+bypassProcedure(Arrays.asList(p.getProcId()), 1, false, 
false);
 for (Boolean b: bs) {
   LOG.info("BYPASSED {} {}", p.getProcId(), b);
 }



hbase git commit: HBASE-21345 [hbck2] Allow version check to proceed even though master is 'initializing'.

2018-10-19 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2.0 358ac814d -> 06d6fe3a9


HBASE-21345 [hbck2] Allow version check to proceed even though master is 
'initializing'.

Just remove the check state from the getClusterStatus call.


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

Branch: refs/heads/branch-2.0
Commit: 06d6fe3a9c566df6165765f58f03a61cee04463f
Parents: 358ac81
Author: Michael Stack 
Authored: Fri Oct 19 11:02:55 2018 -0700
Committer: Michael Stack 
Committed: Fri Oct 19 17:40:40 2018 -0700

--
 .../java/org/apache/hadoop/hbase/master/MasterRpcServices.java  | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/06d6fe3a/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 48a41ee..70a3c62 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
@@ -895,7 +895,10 @@ public class MasterRpcServices extends RSRpcServices
   GetClusterStatusRequest req) throws ServiceException {
 GetClusterStatusResponse.Builder response = 
GetClusterStatusResponse.newBuilder();
 try {
-  master.checkInitialized();
+  // We used to check if Master was up at this point but let this call 
proceed even if
+  // Master is initializing... else we shut out stuff like hbck2 tool from 
making progress
+  // since it queries this method to figure cluster version. hbck2 wants 
to be able to work
+  // against Master even if it is 'initializing' so it can do fixup.
   response.setClusterStatus(ClusterMetricsBuilder.toClusterStatus(
 
master.getClusterMetrics(ClusterMetricsBuilder.toOptions(req.getOptionsList();
 } catch (IOException e) {



hbase git commit: HBASE-21345 [hbck2] Allow version check to proceed even though master is 'initializing'.

2018-10-19 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2.1 a08c2c269 -> 4ad63d77b


HBASE-21345 [hbck2] Allow version check to proceed even though master is 
'initializing'.

Just remove the check state from the getClusterStatus call.


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

Branch: refs/heads/branch-2.1
Commit: 4ad63d77be3656f5aa63cdbf4f2420e4d8bb2e6e
Parents: a08c2c2
Author: Michael Stack 
Authored: Fri Oct 19 11:02:55 2018 -0700
Committer: Michael Stack 
Committed: Fri Oct 19 17:40:03 2018 -0700

--
 .../java/org/apache/hadoop/hbase/master/MasterRpcServices.java  | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/4ad63d77/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 294e604..3ec394a 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
@@ -921,7 +921,10 @@ public class MasterRpcServices extends RSRpcServices
   GetClusterStatusRequest req) throws ServiceException {
 GetClusterStatusResponse.Builder response = 
GetClusterStatusResponse.newBuilder();
 try {
-  master.checkInitialized();
+  // We used to check if Master was up at this point but let this call 
proceed even if
+  // Master is initializing... else we shut out stuff like hbck2 tool from 
making progress
+  // since it queries this method to figure cluster version. hbck2 wants 
to be able to work
+  // against Master even if it is 'initializing' so it can do fixup.
   response.setClusterStatus(ClusterMetricsBuilder.toClusterStatus(
 
master.getClusterMetrics(ClusterMetricsBuilder.toOptions(req.getOptionsList();
 } catch (IOException e) {



hbase git commit: HBASE-21200 Memstore flush doesn't finish because of seekToPreviousRow() in memstore scanner.

2018-10-19 Thread brfrn169
Repository: hbase
Updated Branches:
  refs/heads/branch-2.0 c7bb66fb1 -> 358ac814d


HBASE-21200 Memstore flush doesn't finish because of seekToPreviousRow() in 
memstore scanner.


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

Branch: refs/heads/branch-2.0
Commit: 358ac814da640bab2c278fcc4cf438ffa99c9a6d
Parents: c7bb66f
Author: Toshihiro Suzuki 
Authored: Fri Sep 28 01:29:07 2018 +0900
Committer: Toshihiro Suzuki 
Committed: Sat Oct 20 08:53:46 2018 +0900

--
 .../hbase/regionserver/SegmentScanner.java  | 10 +++--
 .../hadoop/hbase/regionserver/TestHRegion.java  | 40 
 2 files changed, 46 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/358ac814/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
index a8b0d3d..b073799 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
@@ -55,6 +55,8 @@ public class SegmentScanner implements KeyValueScanner {
   // A flag represents whether could stop skipping KeyValues for MVCC
   // if have encountered the next row. Only used for reversed scan
   private boolean stopSkippingKVsIfNextRow = false;
+  // Stop skipping KeyValues for MVCC if finish this row. Only used for 
reversed scan
+  private Cell stopSkippingKVsRow;
   // last iterated KVs by seek (to restore the iterator state after reseek)
   private Cell last = null;
 
@@ -214,6 +216,7 @@ public class SegmentScanner implements KeyValueScanner {
   }
   Cell firstKeyOnPreviousRow = 
PrivateCellUtil.createFirstOnRow(lastCellBeforeRow);
   this.stopSkippingKVsIfNextRow = true;
+  this.stopSkippingKVsRow = firstKeyOnPreviousRow;
   seek(firstKeyOnPreviousRow);
   this.stopSkippingKVsIfNextRow = false;
   if (peek() == null
@@ -362,7 +365,6 @@ public class SegmentScanner implements KeyValueScanner {
* skipping the cells with irrelevant MVCC
*/
   protected void updateCurrent() {
-Cell startKV = current;
 Cell next = null;
 
 try {
@@ -372,9 +374,9 @@ public class SegmentScanner implements KeyValueScanner {
   current = next;
   return;// skip irrelevant versions
 }
-if (stopSkippingKVsIfNextRow &&   // for backwardSeek() stay in the
-startKV != null &&// boundaries of a single row
-segment.compareRows(next, startKV) > 0) {
+// for backwardSeek() stay in the boundaries of a single row
+if (stopSkippingKVsIfNextRow &&
+segment.compareRows(next, stopSkippingKVsRow) > 0) {
   current = null;
   return;
 }

http://git-wip-us.apache.org/repos/asf/hbase/blob/358ac814/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
index 3016224..34b7760 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
@@ -5827,6 +5827,46 @@ public class TestHRegion {
   }
 
   @Test
+  public void testReverseScanWhenPutCellsAfterOpenReverseScan() throws 
Exception {
+byte[] cf1 = Bytes.toBytes("CF1");
+byte[][] families = { cf1 };
+byte[] col = Bytes.toBytes("C");
+
+HBaseConfiguration conf = new HBaseConfiguration();
+this.region = initHRegion(tableName, method, conf, families);
+
+Put put = new Put(Bytes.toBytes("16"));
+put.addColumn(cf1, col, Bytes.toBytes("val"));
+region.put(put);
+Put put2 = new Put(Bytes.toBytes("15"));
+put2.addColumn(cf1, col, Bytes.toBytes("val"));
+region.put(put2);
+
+// Create a reverse scan
+Scan scan = new Scan(Bytes.toBytes("16"));
+scan.setReversed(true);
+RegionScannerImpl scanner = region.getScanner(scan);
+
+// Put a lot of cells that have sequenceIDs grater than the readPt of the 
reverse scan
+for (int i = 10; i < 20; i++) {
+  Put p = new Put(Bytes.toBytes("" + i));
+  p.addColumn(cf1, col, Bytes.toBytes("" + i));
+  region.put(p);

hbase git commit: HBASE-21200 Memstore flush doesn't finish because of seekToPreviousRow() in memstore scanner.

2018-10-19 Thread brfrn169
Repository: hbase
Updated Branches:
  refs/heads/branch-2.1 7e4cb7d7e -> a08c2c269


HBASE-21200 Memstore flush doesn't finish because of seekToPreviousRow() in 
memstore scanner.


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

Branch: refs/heads/branch-2.1
Commit: a08c2c269df84cb542227fd0fb704b3e88d10b98
Parents: 7e4cb7d
Author: Toshihiro Suzuki 
Authored: Fri Sep 28 01:29:07 2018 +0900
Committer: Toshihiro Suzuki 
Committed: Sat Oct 20 08:36:41 2018 +0900

--
 .../hbase/regionserver/SegmentScanner.java  | 10 +++--
 .../hadoop/hbase/regionserver/TestHRegion.java  | 40 
 2 files changed, 46 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/a08c2c26/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
index 8a867b6..ec1ec0b 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
@@ -49,6 +49,8 @@ public class SegmentScanner implements KeyValueScanner {
   // A flag represents whether could stop skipping KeyValues for MVCC
   // if have encountered the next row. Only used for reversed scan
   private boolean stopSkippingKVsIfNextRow = false;
+  // Stop skipping KeyValues for MVCC if finish this row. Only used for 
reversed scan
+  private Cell stopSkippingKVsRow;
   // last iterated KVs by seek (to restore the iterator state after reseek)
   private Cell last = null;
 
@@ -203,6 +205,7 @@ public class SegmentScanner implements KeyValueScanner {
   }
   Cell firstKeyOnPreviousRow = 
PrivateCellUtil.createFirstOnRow(lastCellBeforeRow);
   this.stopSkippingKVsIfNextRow = true;
+  this.stopSkippingKVsRow = firstKeyOnPreviousRow;
   seek(firstKeyOnPreviousRow);
   this.stopSkippingKVsIfNextRow = false;
   if (peek() == null
@@ -344,7 +347,6 @@ public class SegmentScanner implements KeyValueScanner {
* skipping the cells with irrelevant MVCC
*/
   protected void updateCurrent() {
-Cell startKV = current;
 Cell next = null;
 
 try {
@@ -354,9 +356,9 @@ public class SegmentScanner implements KeyValueScanner {
   current = next;
   return;// skip irrelevant versions
 }
-if (stopSkippingKVsIfNextRow &&   // for backwardSeek() stay in the
-startKV != null &&// boundaries of a single row
-segment.compareRows(next, startKV) > 0) {
+// for backwardSeek() stay in the boundaries of a single row
+if (stopSkippingKVsIfNextRow &&
+segment.compareRows(next, stopSkippingKVsRow) > 0) {
   current = null;
   return;
 }

http://git-wip-us.apache.org/repos/asf/hbase/blob/a08c2c26/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
index 3f9bf6a..17be000 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
@@ -5826,6 +5826,46 @@ public class TestHRegion {
   }
 
   @Test
+  public void testReverseScanWhenPutCellsAfterOpenReverseScan() throws 
Exception {
+byte[] cf1 = Bytes.toBytes("CF1");
+byte[][] families = { cf1 };
+byte[] col = Bytes.toBytes("C");
+
+HBaseConfiguration conf = new HBaseConfiguration();
+this.region = initHRegion(tableName, method, conf, families);
+
+Put put = new Put(Bytes.toBytes("16"));
+put.addColumn(cf1, col, Bytes.toBytes("val"));
+region.put(put);
+Put put2 = new Put(Bytes.toBytes("15"));
+put2.addColumn(cf1, col, Bytes.toBytes("val"));
+region.put(put2);
+
+// Create a reverse scan
+Scan scan = new Scan(Bytes.toBytes("16"));
+scan.setReversed(true);
+RegionScannerImpl scanner = region.getScanner(scan);
+
+// Put a lot of cells that have sequenceIDs grater than the readPt of the 
reverse scan
+for (int i = 10; i < 20; i++) {
+  Put p = new Put(Bytes.toBytes("" + i));
+  p.addColumn(cf1, col, Bytes.toBytes("" + i));
+  region.put(p);

hbase git commit: HBASE-21200 Memstore flush doesn't finish because of seekToPreviousRow() in memstore scanner.

2018-10-19 Thread brfrn169
Repository: hbase
Updated Branches:
  refs/heads/branch-2 444f15785 -> 46fe6c0e9


HBASE-21200 Memstore flush doesn't finish because of seekToPreviousRow() in 
memstore scanner.


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

Branch: refs/heads/branch-2
Commit: 46fe6c0e92b39adcb09acb540563d6ea47c8d471
Parents: 444f157
Author: Toshihiro Suzuki 
Authored: Fri Sep 28 01:29:07 2018 +0900
Committer: Toshihiro Suzuki 
Committed: Sat Oct 20 08:35:41 2018 +0900

--
 .../hbase/regionserver/SegmentScanner.java  | 10 +++--
 .../hadoop/hbase/regionserver/TestHRegion.java  | 40 
 2 files changed, 46 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/46fe6c0e/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
index 8a867b6..ec1ec0b 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
@@ -49,6 +49,8 @@ public class SegmentScanner implements KeyValueScanner {
   // A flag represents whether could stop skipping KeyValues for MVCC
   // if have encountered the next row. Only used for reversed scan
   private boolean stopSkippingKVsIfNextRow = false;
+  // Stop skipping KeyValues for MVCC if finish this row. Only used for 
reversed scan
+  private Cell stopSkippingKVsRow;
   // last iterated KVs by seek (to restore the iterator state after reseek)
   private Cell last = null;
 
@@ -203,6 +205,7 @@ public class SegmentScanner implements KeyValueScanner {
   }
   Cell firstKeyOnPreviousRow = 
PrivateCellUtil.createFirstOnRow(lastCellBeforeRow);
   this.stopSkippingKVsIfNextRow = true;
+  this.stopSkippingKVsRow = firstKeyOnPreviousRow;
   seek(firstKeyOnPreviousRow);
   this.stopSkippingKVsIfNextRow = false;
   if (peek() == null
@@ -344,7 +347,6 @@ public class SegmentScanner implements KeyValueScanner {
* skipping the cells with irrelevant MVCC
*/
   protected void updateCurrent() {
-Cell startKV = current;
 Cell next = null;
 
 try {
@@ -354,9 +356,9 @@ public class SegmentScanner implements KeyValueScanner {
   current = next;
   return;// skip irrelevant versions
 }
-if (stopSkippingKVsIfNextRow &&   // for backwardSeek() stay in the
-startKV != null &&// boundaries of a single row
-segment.compareRows(next, startKV) > 0) {
+// for backwardSeek() stay in the boundaries of a single row
+if (stopSkippingKVsIfNextRow &&
+segment.compareRows(next, stopSkippingKVsRow) > 0) {
   current = null;
   return;
 }

http://git-wip-us.apache.org/repos/asf/hbase/blob/46fe6c0e/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
index 9ed7117..8ee3eae 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
@@ -5530,6 +5530,46 @@ public class TestHRegion {
   }
 
   @Test
+  public void testReverseScanWhenPutCellsAfterOpenReverseScan() throws 
Exception {
+byte[] cf1 = Bytes.toBytes("CF1");
+byte[][] families = { cf1 };
+byte[] col = Bytes.toBytes("C");
+
+HBaseConfiguration conf = new HBaseConfiguration();
+this.region = initHRegion(tableName, method, conf, families);
+
+Put put = new Put(Bytes.toBytes("16"));
+put.addColumn(cf1, col, Bytes.toBytes("val"));
+region.put(put);
+Put put2 = new Put(Bytes.toBytes("15"));
+put2.addColumn(cf1, col, Bytes.toBytes("val"));
+region.put(put2);
+
+// Create a reverse scan
+Scan scan = new Scan(Bytes.toBytes("16"));
+scan.setReversed(true);
+RegionScannerImpl scanner = region.getScanner(scan);
+
+// Put a lot of cells that have sequenceIDs grater than the readPt of the 
reverse scan
+for (int i = 10; i < 20; i++) {
+  Put p = new Put(Bytes.toBytes("" + i));
+  p.addColumn(cf1, col, Bytes.toBytes("" + i));
+  region.put(p);
+  

hbase git commit: HBASE-21200 Memstore flush doesn't finish because of seekToPreviousRow() in memstore scanner.

2018-10-19 Thread brfrn169
Repository: hbase
Updated Branches:
  refs/heads/master ae5371603 -> 4bf3c5a70


HBASE-21200 Memstore flush doesn't finish because of seekToPreviousRow() in 
memstore scanner.


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

Branch: refs/heads/master
Commit: 4bf3c5a7022961ea5f45bc37b1982bc2d2fa0a0c
Parents: ae53716
Author: Toshihiro Suzuki 
Authored: Fri Sep 28 01:29:07 2018 +0900
Committer: Toshihiro Suzuki 
Committed: Sat Oct 20 08:34:23 2018 +0900

--
 .../hbase/regionserver/SegmentScanner.java  | 10 +++--
 .../hadoop/hbase/regionserver/TestHRegion.java  | 40 
 2 files changed, 46 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/4bf3c5a7/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
index 8a867b6..ec1ec0b 100644
--- 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
+++ 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/SegmentScanner.java
@@ -49,6 +49,8 @@ public class SegmentScanner implements KeyValueScanner {
   // A flag represents whether could stop skipping KeyValues for MVCC
   // if have encountered the next row. Only used for reversed scan
   private boolean stopSkippingKVsIfNextRow = false;
+  // Stop skipping KeyValues for MVCC if finish this row. Only used for 
reversed scan
+  private Cell stopSkippingKVsRow;
   // last iterated KVs by seek (to restore the iterator state after reseek)
   private Cell last = null;
 
@@ -203,6 +205,7 @@ public class SegmentScanner implements KeyValueScanner {
   }
   Cell firstKeyOnPreviousRow = 
PrivateCellUtil.createFirstOnRow(lastCellBeforeRow);
   this.stopSkippingKVsIfNextRow = true;
+  this.stopSkippingKVsRow = firstKeyOnPreviousRow;
   seek(firstKeyOnPreviousRow);
   this.stopSkippingKVsIfNextRow = false;
   if (peek() == null
@@ -344,7 +347,6 @@ public class SegmentScanner implements KeyValueScanner {
* skipping the cells with irrelevant MVCC
*/
   protected void updateCurrent() {
-Cell startKV = current;
 Cell next = null;
 
 try {
@@ -354,9 +356,9 @@ public class SegmentScanner implements KeyValueScanner {
   current = next;
   return;// skip irrelevant versions
 }
-if (stopSkippingKVsIfNextRow &&   // for backwardSeek() stay in the
-startKV != null &&// boundaries of a single row
-segment.compareRows(next, startKV) > 0) {
+// for backwardSeek() stay in the boundaries of a single row
+if (stopSkippingKVsIfNextRow &&
+segment.compareRows(next, stopSkippingKVsRow) > 0) {
   current = null;
   return;
 }

http://git-wip-us.apache.org/repos/asf/hbase/blob/4bf3c5a7/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
--
diff --git 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
index fcaad62..b2d9a1b 100644
--- 
a/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
+++ 
b/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java
@@ -5534,6 +5534,46 @@ public class TestHRegion {
   }
 
   @Test
+  public void testReverseScanWhenPutCellsAfterOpenReverseScan() throws 
Exception {
+byte[] cf1 = Bytes.toBytes("CF1");
+byte[][] families = { cf1 };
+byte[] col = Bytes.toBytes("C");
+
+HBaseConfiguration conf = new HBaseConfiguration();
+this.region = initHRegion(tableName, method, conf, families);
+
+Put put = new Put(Bytes.toBytes("16"));
+put.addColumn(cf1, col, Bytes.toBytes("val"));
+region.put(put);
+Put put2 = new Put(Bytes.toBytes("15"));
+put2.addColumn(cf1, col, Bytes.toBytes("val"));
+region.put(put2);
+
+// Create a reverse scan
+Scan scan = new Scan(Bytes.toBytes("16"));
+scan.setReversed(true);
+RegionScannerImpl scanner = region.getScanner(scan);
+
+// Put a lot of cells that have sequenceIDs grater than the readPt of the 
reverse scan
+for (int i = 10; i < 20; i++) {
+  Put p = new Put(Bytes.toBytes("" + i));
+  p.addColumn(cf1, col, Bytes.toBytes("" + i));
+  region.put(p);
+}

hbase git commit: HBASE-21323 Should not skip force updating for a sub procedure even if it has been finished

2018-10-19 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2.0 c39e4d2d3 -> c7bb66fb1


HBASE-21323 Should not skip force updating for a sub procedure even if it has 
been finished

Reapplication after fixing failing test.


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

Branch: refs/heads/branch-2.0
Commit: c7bb66fb1e2640931b28f84ce881ecda08ee7a0f
Parents: c39e4d2
Author: zhangduo 
Authored: Wed Oct 17 20:51:19 2018 +0800
Committer: Michael Stack 
Committed: Fri Oct 19 15:31:46 2018 -0700

--
 .../hbase/procedure2/ProcedureExecutor.java | 22 +++-
 .../store/wal/TestForceUpdateProcedure.java | 36 +---
 2 files changed, 53 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/c7bb66fb/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
--
diff --git 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
index 9ad73c4..f4da345 100644
--- 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
+++ 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.util.ArrayDeque;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.Deque;
 import java.util.HashSet;
 import java.util.Iterator;
@@ -376,6 +377,11 @@ public class ProcedureExecutor {
 this(conf, environment, store, new SimpleProcedureScheduler());
   }
 
+  private boolean isRootFinished(Procedure proc) {
+Procedure rootProc = procedures.get(proc.getRootProcId());
+return rootProc == null || rootProc.isFinished();
+  }
+
   private void forceUpdateProcedure(long procId) throws IOException {
 IdLock.Entry lockEntry = procExecutionLock.getLockEntry(procId);
 try {
@@ -384,7 +390,9 @@ public class ProcedureExecutor {
 LOG.debug("No pending procedure with id = {}, skip force updating.", 
procId);
 return;
   }
-  if (proc.isFinished()) {
+  // For a sub procedure which root parent has not been finished, we still 
need to retain the
+  // wal even if the procedure itself is finished.
+  if (proc.isFinished() && (!proc.hasParent() || isRootFinished(proc))) {
 LOG.debug("Procedure {} has already been finished, skip force 
updating.", proc);
 return;
   }
@@ -1396,6 +1404,18 @@ public class ProcedureExecutor {
 return false;
   }
 
+
+  /**
+   * Should only be used when starting up, where the procedure workers have 
not been started.
+   * 
+   * If the procedure works has been started, the return values maybe changed 
when you are
+   * processing it so usually this is not safe. Use {@link #getProcedures()} 
below for most cases as
+   * it will do a copy, and also include the finished procedures.
+   */
+  public Collection> getActiveProceduresNoCopy() {
+return procedures.values();
+  }
+
   /**
* Get procedures.
* @return the procedures in a list

http://git-wip-us.apache.org/repos/asf/hbase/blob/c7bb66fb/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
--
diff --git 
a/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
 
b/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
index 1e27158..df6ee51 100644
--- 
a/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
+++ 
b/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
@@ -123,7 +123,34 @@ public class TestForceUpdateProcedure {
 @Override
 protected Procedure[] execute(Void env)
 throws ProcedureYieldException, ProcedureSuspendedException, 
InterruptedException {
-  return new Procedure[] { new WaitingProcedure() };
+  return new Procedure[] { new DummyProcedure(), new WaitingProcedure() };
+}
+
+@Override
+protected void rollback(Void env) throws IOException, InterruptedException 
{
+  throw new UnsupportedOperationException();
+}
+
+@Override
+protected boolean abort(Void env) {
+  return false;
+}
+
+@Override
+protected void serializeStateData(ProcedureStateSerializer serializer) 
throws IOException {
+}
+
+   

hbase git commit: HBASE-21323 Should not skip force updating for a sub procedure even if it has been finished

2018-10-19 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2.1 63f718974 -> 7e4cb7d7e


HBASE-21323 Should not skip force updating for a sub procedure even if it has 
been finished

Reapplication after fixing failing test.


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

Branch: refs/heads/branch-2.1
Commit: 7e4cb7d7ecfd12f7e767a82401fb6d2a15a433de
Parents: 63f7189
Author: zhangduo 
Authored: Wed Oct 17 20:51:19 2018 +0800
Committer: Michael Stack 
Committed: Fri Oct 19 15:25:15 2018 -0700

--
 .../hbase/procedure2/ProcedureExecutor.java | 22 +++-
 .../store/wal/TestForceUpdateProcedure.java | 36 +---
 2 files changed, 53 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/7e4cb7d7/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
--
diff --git 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
index 102eeb2..845cd97 100644
--- 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
+++ 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
@@ -21,6 +21,7 @@ import java.io.IOException;
 import java.util.ArrayDeque;
 import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.Collection;
 import java.util.Deque;
 import java.util.HashSet;
 import java.util.Iterator;
@@ -376,6 +377,11 @@ public class ProcedureExecutor {
 this(conf, environment, store, new SimpleProcedureScheduler());
   }
 
+  private boolean isRootFinished(Procedure proc) {
+Procedure rootProc = procedures.get(proc.getRootProcId());
+return rootProc == null || rootProc.isFinished();
+  }
+
   private void forceUpdateProcedure(long procId) throws IOException {
 IdLock.Entry lockEntry = procExecutionLock.getLockEntry(procId);
 try {
@@ -384,7 +390,9 @@ public class ProcedureExecutor {
 LOG.debug("No pending procedure with id = {}, skip force updating.", 
procId);
 return;
   }
-  if (proc.isFinished()) {
+  // For a sub procedure which root parent has not been finished, we still 
need to retain the
+  // wal even if the procedure itself is finished.
+  if (proc.isFinished() && (!proc.hasParent() || isRootFinished(proc))) {
 LOG.debug("Procedure {} has already been finished, skip force 
updating.", proc);
 return;
   }
@@ -1396,6 +1404,18 @@ public class ProcedureExecutor {
 return false;
   }
 
+
+  /**
+   * Should only be used when starting up, where the procedure workers have 
not been started.
+   * 
+   * If the procedure works has been started, the return values maybe changed 
when you are
+   * processing it so usually this is not safe. Use {@link #getProcedures()} 
below for most cases as
+   * it will do a copy, and also include the finished procedures.
+   */
+  public Collection> getActiveProceduresNoCopy() {
+return procedures.values();
+  }
+
   /**
* Get procedures.
* @return the procedures in a list

http://git-wip-us.apache.org/repos/asf/hbase/blob/7e4cb7d7/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
--
diff --git 
a/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
 
b/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
index da67fd2..df6ee51 100644
--- 
a/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
+++ 
b/hbase-procedure/src/test/java/org/apache/hadoop/hbase/procedure2/store/wal/TestForceUpdateProcedure.java
@@ -123,7 +123,34 @@ public class TestForceUpdateProcedure {
 @Override
 protected Procedure[] execute(Void env)
 throws ProcedureYieldException, ProcedureSuspendedException, 
InterruptedException {
-  return new Procedure[] { new WaitingProcedure() };
+  return new Procedure[] { new DummyProcedure(), new WaitingProcedure() };
+}
+
+@Override
+protected void rollback(Void env) throws IOException, InterruptedException 
{
+  throw new UnsupportedOperationException();
+}
+
+@Override
+protected boolean abort(Void env) {
+  return false;
+}
+
+@Override
+protected void serializeStateData(ProcedureStateSerializer serializer) 
throws IOException {
+}
+
+   

hbase-site git commit: INFRA-10751 Empty commit

2018-10-19 Thread git-site-role
Repository: hbase-site
Updated Branches:
  refs/heads/asf-site e4eac60b3 -> 383964c63


INFRA-10751 Empty commit


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

Branch: refs/heads/asf-site
Commit: 383964c6368df7905aa1f794d131a25b74b7ae20
Parents: e4eac60
Author: jenkins 
Authored: Fri Oct 19 21:21:01 2018 +
Committer: jenkins 
Committed: Fri Oct 19 21:21:01 2018 +

--

--




hbase-site git commit: Published site at ae53716037bae2abdcebae195579af09a493d000.

2018-10-19 Thread git-site-role
Repository: hbase-site
Updated Branches:
  refs/heads/asf-site f8c3fd2b4 -> e4eac60b3


Published site at ae53716037bae2abdcebae195579af09a493d000.


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

Branch: refs/heads/asf-site
Commit: e4eac60b31f9a80d0dec5d7af24e456f45a393df
Parents: f8c3fd2
Author: jenkins 
Authored: Fri Oct 19 21:20:52 2018 +
Committer: jenkins 
Committed: Fri Oct 19 21:20:52 2018 +

--
 apache_hbase_reference_guide.pdf|  4 +--
 book.html   |  2 +-
 devapidocs/constant-values.html |  2 +-
 .../org/apache/hadoop/hbase/Version.html|  2 +-
 downloads.html  | 28 
 5 files changed, 33 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase-site/blob/e4eac60b/apache_hbase_reference_guide.pdf
--
diff --git a/apache_hbase_reference_guide.pdf b/apache_hbase_reference_guide.pdf
index 59c18b8..b2b43bf 100644
--- a/apache_hbase_reference_guide.pdf
+++ b/apache_hbase_reference_guide.pdf
@@ -5,8 +5,8 @@
 /Author (Apache HBase Team)
 /Creator (Asciidoctor PDF 1.5.0.alpha.15, based on Prawn 2.2.2)
 /Producer (Apache HBase Team)
-/ModDate (D:20181019143259+00'00')
-/CreationDate (D:20181019144927+00'00')
+/ModDate (D:20181019210100+00'00')
+/CreationDate (D:20181019211736+00'00')
 >>
 endobj
 2 0 obj

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/e4eac60b/book.html
--
diff --git a/book.html b/book.html
index 623c48c..501d819 100644
--- a/book.html
+++ b/book.html
@@ -41324,7 +41324,7 @@ 
org/apache/hadoop/hbase/security/access/AccessControlClient.revoke:(Lorg/apache/
 
 
 Version 3.0.0-SNAPSHOT
-Last updated 2018-10-19 14:32:59 UTC
+Last updated 2018-10-19 21:01:00 UTC
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/e4eac60b/devapidocs/constant-values.html
--
diff --git a/devapidocs/constant-values.html b/devapidocs/constant-values.html
index d66575b..58c7326 100644
--- a/devapidocs/constant-values.html
+++ b/devapidocs/constant-values.html
@@ -3824,7 +3824,7 @@
 
 public static final https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true";
 title="class or interface in java.lang">String
 date
-"Fri Oct 19 14:44:21 UTC 2018"
+"Fri Oct 19 21:12:26 UTC 2018"
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/e4eac60b/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
--
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/Version.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
index 044374d..1990c30 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/Version.html
@@ -18,7 +18,7 @@
 010  public static final String version = 
"3.0.0-SNAPSHOT";
 011  public static final String revision = 
"";
 012  public static final String user = 
"jenkins";
-013  public static final String date = "Fri 
Oct 19 14:44:21 UTC 2018";
+013  public static final String date = "Fri 
Oct 19 21:12:26 UTC 2018";
 014  public static final String url = 
"git://jenkins-websites1.apache.org/home/jenkins/jenkins-slave/workspace/hbase_generate_website/hbase";
 015  public static final String srcChecksum 
= "c51cc8d717ab9de60f9aa01fa53257c3";
 016}

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/e4eac60b/downloads.html
--
diff --git a/downloads.html b/downloads.html
index da56e41..58958df 100644
--- a/downloads.html
+++ b/downloads.html
@@ -386,6 +386,34 @@ under the License. -->
 
   
 
+1.4.8
+  
+  
+
+2018/10/08
+  
+  
+
+https://apache.org/dist/hbase/1.4.8/compat-check-report.html";>1.4.7 vs 
1.4.8
+  
+  
+
+https://github.com/apache/hbase/blob/rel/1.4.8/CHANGES.txt";>Changes
+  
+  
+
+https://s.apache.org/hbase-1.4.8-jira-release-notes";>Release Notes
+  
+  
+
+https://www.apache.org/dyn/closer.lua/hbase/1.4.8/hbase-1.4.8-src.tar.gz";>src
 (https://apache.org/dist/hbase/1.4.8/hbase-1.4.8-src.tar.gz.sha512";>sha512
 https://apache.org/dist/hbase/1.4.8/hbase-1.4.8-src.tar.gz.asc";>asc) 

+https://www.apache.org/dyn/closer.lua/hbase/1.4.8/hbase-1.4.8-bin.tar.gz";>bin
 (https://apache.org/dist/hbase/1.4.8/hbase-1.4.8-bin.tar.gz.

hbase git commit: HBASE-21073 Redo concept of maintenance mode

2018-10-19 Thread mdrob
Repository: hbase
Updated Branches:
  refs/heads/branch-2 ca1b5503e -> 444f15785


HBASE-21073 Redo concept of maintenance mode

Instead of being an ephemeral state set by hbck, maintenance mode is now
an explicit toggle set by either configuration property or environment
variable. In maintenance mode, master will host system tables and not
assign any user-space tables to RSs. This gives operators the ability to
affect repairs to meta table with fewer moving parts.


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

Branch: refs/heads/branch-2
Commit: 444f15785c26b0d4e274212b4bcaeb472329a54e
Parents: ca1b550
Author: Mike Drob 
Authored: Mon Oct 8 14:28:23 2018 -0500
Committer: Mike Drob 
Committed: Fri Oct 19 10:04:35 2018 -0500

--
 .../org/apache/hadoop/hbase/master/HMaster.java | 108 +++---
 .../hadoop/hbase/master/LoadBalancer.java   |   9 +-
 .../hadoop/hbase/master/MasterRpcServices.java  |   8 +-
 .../hadoop/hbase/master/MasterServices.java |   2 +-
 .../hadoop/hbase/master/ServerManager.java  |  25 ++--
 .../hbase/master/balancer/BaseLoadBalancer.java |  25 ++--
 .../hbase/regionserver/HRegionServer.java   |   1 +
 .../apache/hadoop/hbase/master/TestMaster.java  |   3 +-
 .../hbase/master/TestMasterRepairMode.java  | 141 +++
 .../zookeeper/MasterMaintenanceModeTracker.java |   4 +
 .../asciidoc/_chapters/troubleshooting.adoc |  18 +++
 11 files changed, 255 insertions(+), 89 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/444f1578/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
--
diff --git 
a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java 
b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
index 851890f..434e59e 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
@@ -204,7 +204,6 @@ import org.apache.hadoop.hbase.util.Threads;
 import org.apache.hadoop.hbase.util.VersionInfo;
 import org.apache.hadoop.hbase.zookeeper.LoadBalancerTracker;
 import org.apache.hadoop.hbase.zookeeper.MasterAddressTracker;
-import org.apache.hadoop.hbase.zookeeper.MasterMaintenanceModeTracker;
 import org.apache.hadoop.hbase.zookeeper.RegionNormalizerTracker;
 import org.apache.hadoop.hbase.zookeeper.ZKClusterId;
 import org.apache.hadoop.hbase.zookeeper.ZKUtil;
@@ -326,9 +325,6 @@ public class HMaster extends HRegionServer implements 
MasterServices {
   // Tracker for region normalizer state
   private RegionNormalizerTracker regionNormalizerTracker;
 
-  //Tracker for master maintenance mode setting
-  private MasterMaintenanceModeTracker maintenanceModeTracker;
-
   private ClusterSchemaService clusterSchemaService;
 
   public static final String HBASE_MASTER_WAIT_ON_SERVICE_IN_SECONDS =
@@ -436,6 +432,11 @@ public class HMaster extends HRegionServer implements 
MasterServices {
   /** jetty server for master to redirect requests to regionserver infoServer 
*/
   private Server masterJettyServer;
 
+  // Determine if we should do normal startup or minimal "single-user" mode 
with no region
+  // servers and no user tables. Useful for repair and recovery of hbase:meta
+  private final boolean maintenanceMode;
+  static final String MAINTENANCE_MODE = "hbase.master.maintenance_mode";
+
   public static class RedirectServlet extends HttpServlet {
 private static final long serialVersionUID = 2894774810058302473L;
 private final int regionServerInfoPort;
@@ -495,6 +496,16 @@ public class HMaster extends HRegionServer implements 
MasterServices {
 super(conf);
 TraceUtil.initTracer(conf);
 try {
+  if (conf.getBoolean(MAINTENANCE_MODE, false)) {
+LOG.info("Detected {}=true via configuration.", MAINTENANCE_MODE);
+maintenanceMode = true;
+  } else if (Boolean.getBoolean(MAINTENANCE_MODE)) {
+LOG.info("Detected {}=true via environment variables.", 
MAINTENANCE_MODE);
+maintenanceMode = true;
+  } else {
+maintenanceMode = false;
+  }
+
   this.rsFatals = new MemoryBoundedLogMessageBuffer(
   conf.getLong("hbase.master.buffer.for.rs.fatals", 1 * 1024 * 1024));
   LOG.info("hbase.rootdir=" + getRootDir() +
@@ -679,6 +690,9 @@ public class HMaster extends HRegionServer implements 
MasterServices {
*/
   @Override
   protected void waitForMasterActive(){
+if (maintenanceMode) {
+  return;
+}
 boolean tablesOnMaster = LoadBalancer.isTablesOnMaster(conf);
 while (!(t

hbase git commit: Update downloads.xml with new entry for 1.4.8 release

2018-10-19 Thread apurtell
Repository: hbase
Updated Branches:
  refs/heads/master 05d22ed96 -> ae5371603


Update downloads.xml with new entry for 1.4.8 release


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

Branch: refs/heads/master
Commit: ae53716037bae2abdcebae195579af09a493d000
Parents: 05d22ed
Author: Andrew Purtell 
Authored: Fri Oct 19 12:57:34 2018 -0700
Committer: Andrew Purtell 
Committed: Fri Oct 19 12:57:34 2018 -0700

--
 src/site/xdoc/downloads.xml | 21 +
 1 file changed, 21 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/ae537160/src/site/xdoc/downloads.xml
--
diff --git a/src/site/xdoc/downloads.xml b/src/site/xdoc/downloads.xml
index 41375a0..af563c5 100644
--- a/src/site/xdoc/downloads.xml
+++ b/src/site/xdoc/downloads.xml
@@ -87,6 +87,27 @@ under the License.
 
 
   
+1.4.8
+  
+  
+2018/10/08
+  
+  
+https://apache.org/dist/hbase/1.4.8/compat-check-report.html";>1.4.7 vs 
1.4.8
+  
+  
+https://github.com/apache/hbase/blob/rel/1.4.8/CHANGES.txt";>Changes
+  
+  
+https://s.apache.org/hbase-1.4.8-jira-release-notes";>Release 
Notes
+  
+  
+https://www.apache.org/dyn/closer.lua/hbase/1.4.8/hbase-1.4.8-src.tar.gz";>src
 (https://apache.org/dist/hbase/1.4.8/hbase-1.4.8-src.tar.gz.sha512";>sha512
 https://apache.org/dist/hbase/1.4.8/hbase-1.4.8-src.tar.gz.asc";>asc) 

+https://www.apache.org/dyn/closer.lua/hbase/1.4.8/hbase-1.4.8-bin.tar.gz";>bin
 (https://apache.org/dist/hbase/1.4.8/hbase-1.4.8-bin.tar.gz.sha512";>sha512
 https://apache.org/dist/hbase/1.4.8/hbase-1.4.8-bin.tar.gz.asc";>asc)
+  
+
+
+  
 1.2.7
   
   



hbase git commit: HBASE-21075 Confirm that we can (rolling) upgrade from 2.0.x and 2.1.x to 2.2.x after HBASE-20881

2018-10-19 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2.1 0cd23c3dd -> 63f718974


HBASE-21075 Confirm that we can (rolling) upgrade from 2.0.x and 2.1.x to 2.2.x 
after HBASE-20881

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/63f71897
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/63f71897
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/63f71897

Branch: refs/heads/branch-2.1
Commit: 63f718974b7061584615e62417774de6ae943936
Parents: 0cd23c3
Author: Duo Zhang 
Authored: Mon Aug 27 15:35:33 2018 +0800
Committer: Michael Stack 
Committed: Fri Oct 19 12:34:36 2018 -0700

--
 .../hbase/procedure2/ProcedureExecutor.java | 40 ++--
 1 file changed, 36 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/63f71897/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
--
diff --git 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
index 6542cc6..102eeb2 100644
--- 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
+++ 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
@@ -86,6 +86,12 @@ public class ProcedureExecutor {
   "hbase.procedure.worker.keep.alive.time.msec";
   private static final long DEFAULT_WORKER_KEEP_ALIVE_TIME = 
TimeUnit.MINUTES.toMillis(1);
 
+  // Enable this flag if you want to upgrade to 2.2+, there are some 
incompatible changes on how we
+  // assign or unassign a region, so we need to make sure all these procedures 
have been finished
+  // before we start the master with new code. See HBASE-20881 and HBASE-21075 
for more details.
+  public static final String UPGRADE_TO_2_2 = "hbase.procedure.upgrade-to-2-2";
+  private static final boolean DEFAULT_UPGRADE_TO_2_2 = false;
+
   /**
* {@link #testing} is non-null when ProcedureExecutor is being tested. 
Tests will try to
* break PE having it fail at various junctures. When non-null, testing is 
set to an instance of
@@ -363,6 +369,8 @@ public class ProcedureExecutor {
   // execution of the same procedure.
   private final IdLock procExecutionLock = new IdLock();
 
+  private final boolean upgradeTo2_2;
+
   public ProcedureExecutor(final Configuration conf, final TEnvironment 
environment,
   final ProcedureStore store) {
 this(conf, environment, store, new SimpleProcedureScheduler());
@@ -394,6 +402,7 @@ public class ProcedureExecutor {
 this.store = store;
 this.conf = conf;
 this.checkOwnerSet = conf.getBoolean(CHECK_OWNER_SET_CONF_KEY, 
DEFAULT_CHECK_OWNER_SET);
+this.upgradeTo2_2 = conf.getBoolean(UPGRADE_TO_2_2, 
DEFAULT_UPGRADE_TO_2_2);
 refreshConfiguration(conf);
 store.registerListener(new ProcedureStoreListener() {
 
@@ -721,6 +730,25 @@ public class ProcedureExecutor {
 // Internal chores
 timeoutExecutor.add(new WorkerMonitor());
 
+if (upgradeTo2_2) {
+  timeoutExecutor.add(new InlineChore() {
+
+@Override
+public void run() {
+  if (procedures.isEmpty()) {
+LOG.info("UPGRADE OK: All existed procedures have been finished, 
quit...");
+System.exit(0);
+  }
+}
+
+@Override
+public int getTimeoutInterval() {
+  // check every 5 seconds to see if we can quit
+  return 5000;
+}
+  });
+}
+
 // Add completed cleaner chore
 addChore(new CompletedProcedureCleaner<>(conf, store, completed, 
nonceKeysToProcIdsMap));
   }
@@ -1203,10 +1231,9 @@ public class ProcedureExecutor {
 if (LOG.isDebugEnabled()) {
   LOG.debug("Stored " + Arrays.toString(procs));
 }
-
 // Add the procedure to the executor
-for (int i = 0; i < procs.length; ++i) {
-  pushProcedure(procs[i]);
+for (Procedure proc : procs) {
+  pushProcedure(proc);
 }
   }
 
@@ -1220,7 +1247,12 @@ public class ProcedureExecutor {
   }
 
   private long pushProcedure(Procedure proc) {
-final long currentProcId = proc.getProcId();
+long currentProcId = proc.getProcId();
+// If we are going to upgrade to 2.2+, and this is not a sub procedure, do 
not push it to
+// scheduler. After we finish all the ongoing procedures, the master will 
quit.
+if (upgradeTo2_2 && !proc.hasParent()) {
+  return currentProcId;
+}
 
 // Update metrics on start of a procedure
 proc.updateMetricsOnSubmit(getEnvironment());



hbase git commit: HBASE-21075 Confirm that we can (rolling) upgrade from 2.0.x and 2.1.x to 2.2.x after HBASE-20881

2018-10-19 Thread stack
Repository: hbase
Updated Branches:
  refs/heads/branch-2.0 d160139ea -> c39e4d2d3


HBASE-21075 Confirm that we can (rolling) upgrade from 2.0.x and 2.1.x to 2.2.x 
after HBASE-20881

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/c39e4d2d
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/c39e4d2d
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/c39e4d2d

Branch: refs/heads/branch-2.0
Commit: c39e4d2d388ec8bcd5cc0f4be6098e7b4d21048a
Parents: d160139
Author: Duo Zhang 
Authored: Mon Aug 27 15:35:33 2018 +0800
Committer: Michael Stack 
Committed: Fri Oct 19 12:35:16 2018 -0700

--
 .../hbase/procedure2/ProcedureExecutor.java | 40 ++--
 1 file changed, 36 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hbase/blob/c39e4d2d/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
--
diff --git 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
index d267c19..9ad73c4 100644
--- 
a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
+++ 
b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
@@ -86,6 +86,12 @@ public class ProcedureExecutor {
   "hbase.procedure.worker.keep.alive.time.msec";
   private static final long DEFAULT_WORKER_KEEP_ALIVE_TIME = 
TimeUnit.MINUTES.toMillis(1);
 
+  // Enable this flag if you want to upgrade to 2.2+, there are some 
incompatible changes on how we
+  // assign or unassign a region, so we need to make sure all these procedures 
have been finished
+  // before we start the master with new code. See HBASE-20881 and HBASE-21075 
for more details.
+  public static final String UPGRADE_TO_2_2 = "hbase.procedure.upgrade-to-2-2";
+  private static final boolean DEFAULT_UPGRADE_TO_2_2 = false;
+
   /**
* {@link #testing} is non-null when ProcedureExecutor is being tested. 
Tests will try to
* break PE having it fail at various junctures. When non-null, testing is 
set to an instance of
@@ -363,6 +369,8 @@ public class ProcedureExecutor {
   // execution of the same procedure.
   private final IdLock procExecutionLock = new IdLock();
 
+  private final boolean upgradeTo2_2;
+
   public ProcedureExecutor(final Configuration conf, final TEnvironment 
environment,
   final ProcedureStore store) {
 this(conf, environment, store, new SimpleProcedureScheduler());
@@ -394,6 +402,7 @@ public class ProcedureExecutor {
 this.store = store;
 this.conf = conf;
 this.checkOwnerSet = conf.getBoolean(CHECK_OWNER_SET_CONF_KEY, 
DEFAULT_CHECK_OWNER_SET);
+this.upgradeTo2_2 = conf.getBoolean(UPGRADE_TO_2_2, 
DEFAULT_UPGRADE_TO_2_2);
 refreshConfiguration(conf);
 store.registerListener(new ProcedureStoreListener() {
 
@@ -721,6 +730,25 @@ public class ProcedureExecutor {
 // Internal chores
 timeoutExecutor.add(new WorkerMonitor());
 
+if (upgradeTo2_2) {
+  timeoutExecutor.add(new InlineChore() {
+
+@Override
+public void run() {
+  if (procedures.isEmpty()) {
+LOG.info("UPGRADE OK: All existed procedures have been finished, 
quit...");
+System.exit(0);
+  }
+}
+
+@Override
+public int getTimeoutInterval() {
+  // check every 5 seconds to see if we can quit
+  return 5000;
+}
+  });
+}
+
 // Add completed cleaner chore
 addChore(new CompletedProcedureCleaner<>(conf, store, completed, 
nonceKeysToProcIdsMap));
   }
@@ -1203,10 +1231,9 @@ public class ProcedureExecutor {
 if (LOG.isDebugEnabled()) {
   LOG.debug("Stored " + Arrays.toString(procs));
 }
-
 // Add the procedure to the executor
-for (int i = 0; i < procs.length; ++i) {
-  pushProcedure(procs[i]);
+for (Procedure proc : procs) {
+  pushProcedure(proc);
 }
   }
 
@@ -1220,7 +1247,12 @@ public class ProcedureExecutor {
   }
 
   private long pushProcedure(Procedure proc) {
-final long currentProcId = proc.getProcId();
+long currentProcId = proc.getProcId();
+// If we are going to upgrade to 2.2+, and this is not a sub procedure, do 
not push it to
+// scheduler. After we finish all the ongoing procedures, the master will 
quit.
+if (upgradeTo2_2 && !proc.hasParent()) {
+  return currentProcId;
+}
 
 // Update metrics on start of a procedure
 proc.updateMetricsOnSubmit(getEnvironment());



[37/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.html 
b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.html
index f12c72e..5ad6589 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.html
@@ -2424,7 +2424,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 movedRegions
-protected https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">MapString,HRegionServer.MovedRegionInfo> movedRegions
+protected https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">MapString,HRegionServer.MovedRegionInfo> movedRegions
 
 
 
@@ -2433,7 +2433,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 TIMEOUT_REGION_MOVED
-private static final int TIMEOUT_REGION_MOVED
+private static final int TIMEOUT_REGION_MOVED
 
 See Also:
 Constant
 Field Values
@@ -2794,7 +2794,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 containsMetaTableRegions
-private boolean containsMetaTableRegions()
+private boolean containsMetaTableRegions()
 
 
 
@@ -2803,7 +2803,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 areAllUserRegionsOffline
-private boolean areAllUserRegionsOffline()
+private boolean areAllUserRegionsOffline()
 
 
 
@@ -2812,7 +2812,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 getWriteRequestCount
-private long getWriteRequestCount()
+private long getWriteRequestCount()
 
 Returns:
 Current write count for all online regions.
@@ -2825,7 +2825,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 tryRegionServerReport
-protected void tryRegionServerReport(long reportStartTime,
+protected void tryRegionServerReport(long reportStartTime,
  long reportEndTime)
   throws https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException
 
@@ -2840,7 +2840,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 reportRegionSizesForQuotas
-public boolean reportRegionSizesForQuotas(RegionSizeStore regionSizeStore)
+public boolean reportRegionSizesForQuotas(RegionSizeStore regionSizeStore)
 Reports the given map of Regions and their size on the 
filesystem to the active Master.
 
 Specified by:
@@ -2858,7 +2858,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 buildReportAndSend
-void buildReportAndSend(org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionServerStatusService.BlockingInterface rss,
+void buildReportAndSend(org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionServerStatusService.BlockingInterface rss,
 RegionSizeStore regionSizeStore)
  throws 
org.apache.hbase.thirdparty.com.google.protobuf.ServiceException
 Builds the region size report and sends it to the master. 
Upon successful sending of the
@@ -2878,7 +2878,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 buildRegionSpaceUseReportRequest
-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionSpaceUseReportRequest buildRegionSpaceUseReportRequest(RegionSizeStore regionSizes)
+org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionSpaceUseReportRequest buildRegionSpaceUseReportRequest(RegionSizeStore regionSizes)
 Builds a 
RegionServerStatusProtos.RegionSpaceUseReportRequest protobuf 
message from the region size map.
 
 Parameters:
@@ -2894,7 +2894,7 @@ protected static final https://docs.oracle.com/javase/8/docs/api/j
 
 
 convertRegionSize
-org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionSpaceUse convertRegionSize(RegionInfo regionInfo,
+org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.RegionSpaceUse convertRegionSize(RegionInfo regionInfo,

 https://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true";
 title="class or interface in java.lang">Long sizeInBytes)
 Converts a pair of RegionInfo 
and long into a 
RegionServerStatusProtos.RegionSpaceUse
  protobuf message.

[38/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
--
diff --git 
a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
 
b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
index 2ab8ea8..c1e278a 100644
--- 
a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
+++ 
b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
@@ -122,7 +122,7 @@ var activeTableTab = "activeTableTab";
 
 
 
-private static class HRegionServer.CompactionChecker
+private static class HRegionServer.CompactionChecker
 extends ScheduledChore
 
 
@@ -233,7 +233,7 @@ extends 
 
 instance
-private final HRegionServer instance
+private final HRegionServer instance
 
 
 
@@ -242,7 +242,7 @@ extends 
 
 majorCompactPriority
-private final int majorCompactPriority
+private final int majorCompactPriority
 
 
 
@@ -251,7 +251,7 @@ extends 
 
 DEFAULT_PRIORITY
-private static final int DEFAULT_PRIORITY
+private static final int DEFAULT_PRIORITY
 
 See Also:
 Constant
 Field Values
@@ -264,7 +264,7 @@ extends 
 
 iteration
-private long iteration
+private long iteration
 
 
 
@@ -281,7 +281,7 @@ extends 
 
 CompactionChecker
-CompactionChecker(HRegionServer h,
+CompactionChecker(HRegionServer h,
   int sleepTime,
   Stoppable stopper)
 
@@ -300,7 +300,7 @@ extends 
 
 chore
-protected void chore()
+protected void chore()
 Description copied from 
class: ScheduledChore
 The task to execute on each scheduled execution of the 
Chore
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
--
diff --git 
a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
 
b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
index 52d173c..1b331b6 100644
--- 
a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
+++ 
b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
@@ -113,7 +113,7 @@ var activeTableTab = "activeTableTab";
 
 
 
-private static class HRegionServer.MovedRegionInfo
+private static class HRegionServer.MovedRegionInfo
 extends https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true";
 title="class or interface in java.lang">Object
 
 
@@ -218,7 +218,7 @@ extends https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 
 
 serverName
-private final ServerName serverName
+private final ServerName serverName
 
 
 
@@ -227,7 +227,7 @@ extends https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 
 
 seqNum
-private final long seqNum
+private final long seqNum
 
 
 
@@ -236,7 +236,7 @@ extends https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 
 
 ts
-private final long ts
+private final long ts
 
 
 
@@ -253,7 +253,7 @@ extends https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 
 
 MovedRegionInfo
-public MovedRegionInfo(ServerName serverName,
+public MovedRegionInfo(ServerName serverName,
long closeSeqNum)
 
 
@@ -271,7 +271,7 @@ extends https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 
 
 getServerName
-public ServerName getServerName()
+public ServerName getServerName()
 
 
 
@@ -280,7 +280,7 @@ extends https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 
 
 getSeqNum
-public long getSeqNum()
+public long getSeqNum()
 
 
 
@@ -289,7 +289,7 @@ extends https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html
 
 
 getMoveTime
-public long getMoveTime()
+public long getMoveTime()
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
--
diff --git 
a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
 
b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
index f6dd311..d07c034 100644
--- 
a/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
+++ 
b/devapidocs/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
@@ -122,7 +122,7 @@ var activeTableTab = "activeTableTab";
 
 
 
-protected static final class HRegionServer.MovedRegionsCleaner
+protected static final class HRegionServer.MovedRegionsCleaner
 extends ScheduledChore
 implements Stoppable
 Creates a Chore thread to clean the moved region 
cache.
@@ -242,7 +242,7 @@ implements 
 
 regionServer
-private HRegionServer regionServer
+private HRegionServer regionServer

[29/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.BalanceSwitchMode.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.BalanceSwitchMode.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.BalanceSwitchMode.html
index 684e709..4365cc5 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.BalanceSwitchMode.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.BalanceSwitchMode.html
@@ -361,7 +361,7 @@
 353  throws IOException {
 354// RpcServer at HM by default enable 
ByteBufferPool iff HM having user table region in it
 355boolean reservoirEnabled = 
conf.getBoolean(RESERVOIR_ENABLED_KEY,
-356
(LoadBalancer.isTablesOnMaster(conf) && 
!LoadBalancer.isSystemTablesOnlyOnMaster(conf)));
+356
LoadBalancer.isMasterCanHostUserRegions(conf));
 357try {
 358  return 
RpcServerFactory.createRpcServer(server, name, getServices(),
 359  bindAddress, // use final 
bindAddress for this server.
@@ -1532,934 +1532,930 @@
 1524  final RpcController controller,
 1525  final IsInMaintenanceModeRequest 
request) throws ServiceException {
 1526IsInMaintenanceModeResponse.Builder 
response = IsInMaintenanceModeResponse.newBuilder();
-1527try {
-1528  
response.setInMaintenanceMode(master.isInMaintenanceMode());
-1529} catch (IOException e) {
-1530  throw new ServiceException(e);
-1531}
-1532return response.build();
-1533  }
-1534
-1535  @Override
-1536  public UnassignRegionResponse 
unassignRegion(RpcController controller,
-1537  UnassignRegionRequest req) throws 
ServiceException {
-1538try {
-1539  final byte [] regionName = 
req.getRegion().getValue().toByteArray();
-1540  RegionSpecifierType type = 
req.getRegion().getType();
-1541  final boolean force = 
req.getForce();
-1542  UnassignRegionResponse urr = 
UnassignRegionResponse.newBuilder().build();
-1543
-1544  master.checkInitialized();
-1545  if (type != 
RegionSpecifierType.REGION_NAME) {
-1546LOG.warn("unassignRegion 
specifier type: expected: " + RegionSpecifierType.REGION_NAME
-1547  + " actual: " + type);
-1548  }
-1549  Pair 
pair =
-1550
MetaTableAccessor.getRegion(master.getConnection(), regionName);
-1551  if 
(Bytes.equals(RegionInfoBuilder.FIRST_META_REGIONINFO.getRegionName(),regionName))
 {
-1552pair = new 
Pair<>(RegionInfoBuilder.FIRST_META_REGIONINFO,
-1553
master.getMetaTableLocator().getMetaRegionLocation(master.getZooKeeper()));
-1554  }
-1555  if (pair == null) {
-1556throw new 
UnknownRegionException(Bytes.toString(regionName));
-1557  }
-1558
-1559  RegionInfo hri = 
pair.getFirst();
-1560  if (master.cpHost != null) {
-1561master.cpHost.preUnassign(hri, 
force);
-1562  }
-1563  
LOG.debug(master.getClientIdAuditPrefix() + " unassign " + 
hri.getRegionNameAsString()
-1564  + " in current location if it 
is online and reassign.force=" + force);
-1565  
master.getAssignmentManager().unassign(hri);
-1566  if (master.cpHost != null) {
-1567master.cpHost.postUnassign(hri, 
force);
-1568  }
-1569
-1570  return urr;
-1571} catch (IOException ioe) {
-1572  throw new ServiceException(ioe);
-1573}
-1574  }
-1575
-1576  @Override
-1577  public 
ReportRegionStateTransitionResponse reportRegionStateTransition(RpcController 
c,
-1578  ReportRegionStateTransitionRequest 
req) throws ServiceException {
-1579try {
-1580  master.checkServiceStarted();
-1581  return 
master.getAssignmentManager().reportRegionStateTransition(req);
-1582} catch (IOException ioe) {
-1583  throw new ServiceException(ioe);
-1584}
-1585  }
-1586
-1587  @Override
-1588  public SetQuotaResponse 
setQuota(RpcController c, SetQuotaRequest req)
-1589  throws ServiceException {
-1590try {
-1591  master.checkInitialized();
-1592  return 
master.getMasterQuotaManager().setQuota(req);
-1593} catch (Exception e) {
-1594  throw new ServiceException(e);
-1595}
-1596  }
-1597
-1598  @Override
-1599  public 
MajorCompactionTimestampResponse getLastMajorCompactionTimestamp(RpcController 
controller,
-1600  MajorCompactionTimestampRequest 
request) throws ServiceException {
-1601
MajorCompactionTimestampResponse.Builder response =
-1602
MajorCompactionTimestampResponse.newBuilder();
-1603try {
-1604  master.checkInitialized();
-1605  
response.setCompactionTimestamp(master.getLastMajorCompactionTimestamp(ProtobufUtil
-1606  
.toTableName(request.getTableName(;
-1607} catch (IOException e) {
-1608  throw new ServiceException(e);
-1609}
-1610return res

[33/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html
index 9fbe400..b7a2a38 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.RedirectServlet.html
@@ -215,3746 +215,3748 @@
 207import 
org.apache.hadoop.hbase.util.VersionInfo;
 208import 
org.apache.hadoop.hbase.zookeeper.LoadBalancerTracker;
 209import 
org.apache.hadoop.hbase.zookeeper.MasterAddressTracker;
-210import 
org.apache.hadoop.hbase.zookeeper.MasterMaintenanceModeTracker;
-211import 
org.apache.hadoop.hbase.zookeeper.RegionNormalizerTracker;
-212import 
org.apache.hadoop.hbase.zookeeper.ZKClusterId;
-213import 
org.apache.hadoop.hbase.zookeeper.ZKUtil;
-214import 
org.apache.hadoop.hbase.zookeeper.ZKWatcher;
-215import 
org.apache.hadoop.hbase.zookeeper.ZNodePaths;
-216import 
org.apache.yetus.audience.InterfaceAudience;
-217import 
org.apache.zookeeper.KeeperException;
-218import org.eclipse.jetty.server.Server;
-219import 
org.eclipse.jetty.server.ServerConnector;
-220import 
org.eclipse.jetty.servlet.ServletHolder;
-221import 
org.eclipse.jetty.webapp.WebAppContext;
-222import org.slf4j.Logger;
-223import org.slf4j.LoggerFactory;
-224
-225import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-226import 
org.apache.hbase.thirdparty.com.google.common.collect.ImmutableSet;
-227import 
org.apache.hbase.thirdparty.com.google.common.collect.Lists;
-228import 
org.apache.hbase.thirdparty.com.google.common.collect.Maps;
-229
-230import 
org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
-231import 
org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState;
-232import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas;
-233import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceViolationPolicy;
-234import 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription;
-235import 
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos;
-236
-237/**
-238 * HMaster is the "master server" for 
HBase. An HBase cluster has one active
-239 * master.  If many masters are started, 
all compete.  Whichever wins goes on to
-240 * run the cluster.  All others park 
themselves in their constructor until
-241 * master or cluster shutdown or until 
the active master loses its lease in
-242 * zookeeper.  Thereafter, all running 
master jostle to take over master role.
-243 *
-244 * 

The Master can be asked shutdown the cluster. See {@link #shutdown()}. In -245 * this case it will tell all regionservers to go down and then wait on them -246 * all reporting in that they are down. This master will then shut itself down. -247 * -248 *

You can also shutdown just this master. Call {@link #stopMaster()}. -249 * -250 * @see org.apache.zookeeper.Watcher -251 */ -252@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.TOOLS) -253@SuppressWarnings("deprecation") -254public class HMaster extends HRegionServer implements MasterServices { -255 private static Logger LOG = LoggerFactory.getLogger(HMaster.class); -256 -257 /** -258 * Protection against zombie master. Started once Master accepts active responsibility and -259 * starts taking over responsibilities. Allows a finite time window before giving up ownership. -260 */ -261 private static class InitializationMonitor extends HasThread { -262/** The amount of time in milliseconds to sleep before checking initialization status. */ -263public static final String TIMEOUT_KEY = "hbase.master.initializationmonitor.timeout"; -264public static final long TIMEOUT_DEFAULT = TimeUnit.MILLISECONDS.convert(15, TimeUnit.MINUTES); -265 -266/** -267 * When timeout expired and initialization has not complete, call {@link System#exit(int)} when -268 * true, do nothing otherwise. -269 */ -270public static final String HALT_KEY = "hbase.master.initializationmonitor.haltontimeout"; -271public static final boolean HALT_DEFAULT = false; -272 -273private final HMaster master; -274private final long timeout; -275private final boolean haltOnTimeout; -276 -277/** Creates a Thread that monitors the {@link #isInitialized()} state. */ -278InitializationMonitor(HMaster master) { -279 super("MasterInitializationMonitor"); -280 this.master = master; -281 this.timeout = master.getConfiguration().getLong(TIMEOUT_KEY, TIMEOUT_DEFAULT); -282 this.haltOnTimeout = master.getConfiguration().getBoolean(HALT_KEY, HALT_DEFAULT); -283 this.setDaemon(true); -284} -2


[14/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
index 90087b4..b2a9771 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionsCleaner.html
@@ -956,2857 +956,2858 @@
 948  // Try and register with the 
Master; tell it we are here.  Break if server is stopped or the
 949  // clusterup flag is down or hdfs 
went wacky. Once registered successfully, go ahead and start
 950  // up all Services. Use 
RetryCounter to get backoff in case Master is struggling to come up.
-951  RetryCounterFactory rcf = new 
RetryCounterFactory(Integer.MAX_VALUE,
-952  this.sleeper.getPeriod(), 1000 
* 60 * 5);
-953  RetryCounter rc = rcf.create();
-954  while (keepLooping()) {
-955RegionServerStartupResponse w = 
reportForDuty();
-956if (w == null) {
-957  long sleepTime = 
rc.getBackoffTimeAndIncrementAttempts();
-958  LOG.warn("reportForDuty failed; 
sleeping {} ms and then retrying.", sleepTime);
-959  
this.sleeper.sleep(sleepTime);
-960} else {
-961  
handleReportForDutyResponse(w);
-962  break;
-963}
-964  }
-965
-966  if (!isStopped() && 
isHealthy()) {
-967// start the snapshot handler and 
other procedure handlers,
-968// since the server is ready to 
run
-969if (this.rspmHost != null) {
-970  this.rspmHost.start();
-971}
-972// Start the Quota Manager
-973if (this.rsQuotaManager != null) 
{
-974  
rsQuotaManager.start(getRpcServer().getScheduler());
-975}
-976if (this.rsSpaceQuotaManager != 
null) {
-977  
this.rsSpaceQuotaManager.start();
-978}
-979  }
-980
-981  // We registered with the Master.  
Go into run mode.
-982  long lastMsg = 
System.currentTimeMillis();
-983  long oldRequestCount = -1;
-984  // The main run loop.
-985  while (!isStopped() && 
isHealthy()) {
-986if (!isClusterUp()) {
-987  if (isOnlineRegionsEmpty()) {
-988stop("Exiting; cluster 
shutdown set and not carrying any regions");
-989  } else if (!this.stopping) {
-990this.stopping = true;
-991LOG.info("Closing user 
regions");
-992
closeUserRegions(this.abortRequested);
-993  } else if (this.stopping) {
-994boolean allUserRegionsOffline 
= areAllUserRegionsOffline();
-995if (allUserRegionsOffline) 
{
-996  // Set stopped if no more 
write requests tp meta tables
-997  // since last time we went 
around the loop.  Any open
-998  // meta regions will be 
closed on our way out.
-999  if (oldRequestCount == 
getWriteRequestCount()) {
-1000stop("Stopped; only 
catalog regions remaining online");
-1001break;
-1002  }
-1003  oldRequestCount = 
getWriteRequestCount();
-1004} else {
-1005  // Make sure all regions 
have been closed -- some regions may
-1006  // have not got it because 
we were splitting at the time of
-1007  // the call to 
closeUserRegions.
-1008  
closeUserRegions(this.abortRequested);
-1009}
-1010LOG.debug("Waiting on " + 
getOnlineRegionsAsPrintableString());
-1011  }
-1012}
-1013long now = 
System.currentTimeMillis();
-1014if ((now - lastMsg) >= 
msgInterval) {
-1015  tryRegionServerReport(lastMsg, 
now);
-1016  lastMsg = 
System.currentTimeMillis();
-1017}
-1018if (!isStopped() && 
!isAborted()) {
-1019  this.sleeper.sleep();
-1020}
-1021  } // for
-1022} catch (Throwable t) {
-1023  if (!rpcServices.checkOOME(t)) {
-1024String prefix = t instanceof 
YouAreDeadException? "": "Unhandled: ";
-1025abort(prefix + t.getMessage(), 
t);
-1026  }
-1027}
-1028if (this.leases != null) {
-1029  
this.leases.closeAfterLeasesExpire();
-1030}
-1031if (this.splitLogWorker != null) {
-1032  splitLogWorker.stop();
-1033}
-1034if (this.infoServer != null) {
-1035  LOG.info("Stopping infoServer");
-1036  try {
-1037this.infoServer.stop();
-1038  } catch (Exception e) {
-1039LOG.error("Failed to stop 
infoServer", e);
-1040  }
-1041}
-1042// Send cache a shutdown.
-1043if (cacheConfig != null && 
cacheConfig.isBlockCacheEnabled(

[07/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannersCloseCallBack.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannersCloseCallBack.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannersCloseCallBack.html
index 20e3eaa..b257d07 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannersCloseCallBack.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannersCloseCallBack.html
@@ -2493,1291 +2493,1293 @@
 2485  }
 2486
 2487  private boolean 
shouldRejectRequestsFromClient(HRegion region) {
-2488return 
regionServer.getReplicationSourceService().getSyncReplicationPeerInfoProvider()
-2489  
.checkState(region.getRegionInfo().getTable(), 
RejectRequestsFromClientStateChecker.get());
-2490  }
-2491
-2492  private void 
rejectIfInStandByState(HRegion region) throws DoNotRetryIOException {
-2493if 
(shouldRejectRequestsFromClient(region)) {
-2494  throw new DoNotRetryIOException(
-2495
region.getRegionInfo().getRegionNameAsString() + " is in STANDBY state.");
-2496}
-2497  }
-2498
-2499  /**
-2500   * Get data from a table.
-2501   *
-2502   * @param controller the RPC 
controller
-2503   * @param request the get request
-2504   * @throws ServiceException
-2505   */
-2506  @Override
-2507  public GetResponse get(final 
RpcController controller, final GetRequest request)
-2508  throws ServiceException {
-2509long before = 
EnvironmentEdgeManager.currentTime();
-2510OperationQuota quota = null;
-2511HRegion region = null;
-2512try {
-2513  checkOpen();
-2514  requestCount.increment();
-2515  rpcGetRequestCount.increment();
-2516  region = 
getRegion(request.getRegion());
-2517  rejectIfInStandByState(region);
-2518
-2519  GetResponse.Builder builder = 
GetResponse.newBuilder();
-2520  ClientProtos.Get get = 
request.getGet();
-2521  // An asynchbase client, 
https://github.com/OpenTSDB/asynchbase, starts by trying to do
-2522  // a get closest before. Throwing 
the UnknownProtocolException signals it that it needs
-2523  // to switch and do hbase2 
protocol (HBase servers do not tell clients what versions
-2524  // they are; its a problem for 
non-native clients like asynchbase. HBASE-20225.
-2525  if (get.hasClosestRowBefore() 
&& get.getClosestRowBefore()) {
-2526throw new 
UnknownProtocolException("Is this a pre-hbase-1.0.0 or asynchbase client? " +
-2527"Client is invoking 
getClosestRowBefore removed in hbase-2.0.0 replaced by " +
-2528"reverse Scan.");
-2529  }
-2530  Boolean existence = null;
-2531  Result r = null;
-2532  RpcCallContext context = 
RpcServer.getCurrentCall().orElse(null);
-2533  quota = 
getRpcQuotaManager().checkQuota(region, OperationQuota.OperationType.GET);
-2534
-2535  Get clientGet = 
ProtobufUtil.toGet(get);
-2536  if (get.getExistenceOnly() 
&& region.getCoprocessorHost() != null) {
-2537existence = 
region.getCoprocessorHost().preExists(clientGet);
-2538  }
-2539  if (existence == null) {
-2540if (context != null) {
-2541  r = get(clientGet, (region), 
null, context);
-2542} else {
-2543  // for test purpose
-2544  r = region.get(clientGet);
-2545}
-2546if (get.getExistenceOnly()) {
-2547  boolean exists = 
r.getExists();
-2548  if 
(region.getCoprocessorHost() != null) {
-2549exists = 
region.getCoprocessorHost().postExists(clientGet, exists);
-2550  }
-2551  existence = exists;
-2552}
-2553  }
-2554  if (existence != null) {
-2555ClientProtos.Result pbr =
-2556
ProtobufUtil.toResult(existence, region.getRegionInfo().getReplicaId() != 0);
-2557builder.setResult(pbr);
-2558  } else if (r != null) {
-2559ClientProtos.Result pbr;
-2560if 
(isClientCellBlockSupport(context) && controller instanceof 
HBaseRpcController
-2561&& 
VersionInfoUtil.hasMinimumVersion(context.getClientVersionInfo(), 1, 3)) {
-2562  pbr = 
ProtobufUtil.toResultNoData(r);
-2563  ((HBaseRpcController) 
controller).setCellScanner(CellUtil.createCellScanner(r
-2564  .rawCells()));
-2565  addSize(context, r, null);
-2566} else {
-2567  pbr = 
ProtobufUtil.toResult(r);
-2568}
-2569builder.setResult(pbr);
-2570  }
-2571  if (r != null) {
-2572quota.addGetResult(r);
-2573  }
-2574  return builder.build();
-2575} catch (IOException ie) {
-2576  throw new ServiceException(ie);
-2577} finally {
-2578  MetricsRegionServer mrs = 
regionServer.m

[45/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/apache_hbase_reference_guide.pdf
--
diff --git a/apache_hbase_reference_guide.pdf b/apache_hbase_reference_guide.pdf
index 64eba67..59c18b8 100644
--- a/apache_hbase_reference_guide.pdf
+++ b/apache_hbase_reference_guide.pdf
@@ -5,16 +5,16 @@
 /Author (Apache HBase Team)
 /Creator (Asciidoctor PDF 1.5.0.alpha.15, based on Prawn 2.2.2)
 /Producer (Apache HBase Team)
-/ModDate (D:20181018143307+00'00')
-/CreationDate (D:20181018145026+00'00')
+/ModDate (D:20181019143259+00'00')
+/CreationDate (D:20181019144927+00'00')
 >>
 endobj
 2 0 obj
 << /Type /Catalog
 /Pages 3 0 R
 /Names 28 0 R
-/Outlines 5009 0 R
-/PageLabels 5260 0 R
+/Outlines 5012 0 R
+/PageLabels 5263 0 R
 /PageMode /UseOutlines
 /OpenAction [7 0 R /FitH 842.89]
 /ViewerPreferences << /DisplayDocTitle true
@@ -23,8 +23,8 @@ endobj
 endobj
 3 0 obj
 << /Type /Pages
-/Count 787
-/Kids [7 0 R 12 0 R 14 0 R 16 0 R 18 0 R 20 0 R 22 0 R 24 0 R 26 0 R 46 0 R 49 
0 R 52 0 R 56 0 R 63 0 R 65 0 R 69 0 R 71 0 R 73 0 R 80 0 R 83 0 R 85 0 R 91 0 
R 94 0 R 96 0 R 98 0 R 105 0 R 112 0 R 117 0 R 119 0 R 135 0 R 140 0 R 148 0 R 
157 0 R 165 0 R 169 0 R 178 0 R 189 0 R 193 0 R 195 0 R 199 0 R 208 0 R 217 0 R 
225 0 R 234 0 R 239 0 R 248 0 R 256 0 R 265 0 R 278 0 R 285 0 R 295 0 R 303 0 R 
311 0 R 318 0 R 327 0 R 333 0 R 339 0 R 346 0 R 354 0 R 362 0 R 373 0 R 386 0 R 
394 0 R 401 0 R 409 0 R 417 0 R 426 0 R 436 0 R 444 0 R 451 0 R 458 0 R 467 0 R 
480 0 R 488 0 R 495 0 R 503 0 R 511 0 R 520 0 R 525 0 R 531 0 R 536 0 R 540 0 R 
556 0 R 567 0 R 571 0 R 586 0 R 591 0 R 596 0 R 598 0 R 600 0 R 603 0 R 605 0 R 
607 0 R 615 0 R 621 0 R 624 0 R 628 0 R 637 0 R 648 0 R 656 0 R 660 0 R 664 0 R 
666 0 R 676 0 R 691 0 R 698 0 R 709 0 R 719 0 R 730 0 R 742 0 R 762 0 R 777 0 R 
784 0 R 791 0 R 797 0 R 800 0 R 804 0 R 808 0 R 811 0 R 814 0 R 816 0 R 819 0 R 
823 0 R 825 0 R 829 0 R 835 0 R 840 0 R 
 844 0 R 847 0 R 853 0 R 855 0 R 859 0 R 867 0 R 869 0 R 872 0 R 875 0 R 878 0 
R 881 0 R 895 0 R 903 0 R 914 0 R 925 0 R 931 0 R 941 0 R 952 0 R 955 0 R 959 0 
R 962 0 R 967 0 R 976 0 R 984 0 R 989 0 R 993 0 R 998 0 R 1002 0 R 1004 0 R 
1019 0 R 1030 0 R 1035 0 R 1042 0 R 1045 0 R 1053 0 R 1061 0 R 1066 0 R 1071 0 
R 1076 0 R 1078 0 R 1080 0 R 1082 0 R 1092 0 R 1100 0 R 1104 0 R  0 R 1118 
0 R 1126 0 R 1130 0 R 1136 0 R 1141 0 R 1149 0 R 1153 0 R 1158 0 R 1160 0 R 
1166 0 R 1174 0 R 1180 0 R 1187 0 R 1198 0 R 1202 0 R 1204 0 R 1206 0 R 1210 0 
R 1213 0 R 1218 0 R 1221 0 R 1233 0 R 1237 0 R 1243 0 R 1251 0 R 1256 0 R 1260 
0 R 1264 0 R 1266 0 R 1269 0 R 1272 0 R 1275 0 R 1279 0 R 1283 0 R 1287 0 R 
1292 0 R 1296 0 R 1299 0 R 1301 0 R 1311 0 R 1313 0 R 1318 0 R 1331 0 R 1335 0 
R 1341 0 R 1343 0 R 1354 0 R 1357 0 R 1363 0 R 1371 0 R 1374 0 R 1381 0 R 1388 
0 R 1391 0 R 1393 0 R 1402 0 R 1404 0 R 1406 0 R 1409 0 R 1411 0 R 1413 0 R 
1415 0 R 1417 0 R 1420 0 R 1424 0 R 1429 0 R 1431 0 R 1433 0 
 R 1435 0 R 1440 0 R 1447 0 R 1453 0 R 1456 0 R 1458 0 R 1461 0 R 1465 0 R 1469 
0 R 1472 0 R 1474 0 R 1476 0 R 1479 0 R 1484 0 R 1490 0 R 1498 0 R 1512 0 R 
1526 0 R 1529 0 R 1534 0 R 1547 0 R 1552 0 R 1567 0 R 1575 0 R 1579 0 R 1588 0 
R 1603 0 R 1615 0 R 1618 0 R 1632 0 R 1640 0 R 1645 0 R 1656 0 R 1661 0 R 1667 
0 R 1673 0 R 1685 0 R 1688 0 R 1697 0 R 1700 0 R 1709 0 R 1714 0 R 1719 0 R 
1723 0 R 1736 0 R 1738 0 R 1744 0 R 1750 0 R 1753 0 R 1761 0 R 1769 0 R 1773 0 
R 1775 0 R 1777 0 R 1789 0 R 1795 0 R 1804 0 R 1811 0 R 1824 0 R 1830 0 R 1836 
0 R 1847 0 R 1853 0 R 1858 0 R 1862 0 R 1866 0 R 1869 0 R 1874 0 R 1879 0 R 
1885 0 R 1890 0 R 1894 0 R 1903 0 R 1909 0 R 1912 0 R 1916 0 R 1925 0 R 1932 0 
R 1938 0 R 1945 0 R 1949 0 R 1952 0 R 1957 0 R 1962 0 R 1968 0 R 1970 0 R 1972 
0 R 1975 0 R 1986 0 R 1989 0 R 1996 0 R 2004 0 R 2009 0 R 2012 0 R 2017 0 R 
2019 0 R 2022 0 R 2027 0 R 2030 0 R 2032 0 R 2035 0 R 2038 0 R 2041 0 R 2051 0 
R 2056 0 R 2061 0 R 2063 0 R 2071 0 R 2078 0 R 2085 0 R 2091 
 0 R 2096 0 R 2098 0 R 2107 0 R 2117 0 R 2127 0 R 2133 0 R 2140 0 R 2142 0 R 
2147 0 R 2149 0 R 2151 0 R 2155 0 R 2158 0 R 2161 0 R 2166 0 R 2170 0 R 2181 0 
R 2184 0 R 2187 0 R 2191 0 R 2195 0 R 2198 0 R 2200 0 R 2205 0 R 2208 0 R 2210 
0 R 2215 0 R 2225 0 R 2227 0 R 2229 0 R 2231 0 R 2233 0 R 2236 0 R 2238 0 R 
2240 0 R 2243 0 R 2245 0 R 2247 0 R 2251 0 R 2256 0 R 2265 0 R 2267 0 R 2269 0 
R 2275 0 R 2277 0 R 2282 0 R 2284 0 R 2286 0 R 2293 0 R 2298 0 R 2302 0 R 2307 
0 R 2311 0 R 2313 0 R 2315 0 R 2319 0 R 2322 0 R 2324 0 R 2326 0 R 2330 0 R 
2332 0 R 2335 0 R 2337 0 R 2339 0 R 2341 0 R 2348 0 R 2351 0 R 2356 0 R 2358 0 
R 2360 0 R 2362 0 R 2364 0 R 2372 0 R 2383 0 R 2397 0 R 2408 0 R 2412 0 R 2417 
0 R 2421 0 R 2424 0 R 2429 0 R 2435 0 R 2437 0 R 2440 0 R 2442 0 R 2444 0 R 
2446 0 R 2451 0 R 2453 0 R 2466 0 R 2469 0 R 2477 0 R 2483 0 R 2495 0 R 2509 0 
R 2522 0 R 2541 0 R 2543 0 R 2545 0 R 2549 0 R 2567 0 R 2573 0 R 2585 0 R 2589 
0 R 2593 0 R 2602 0 R 2614 0 R 2619 

[32/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.TableDescriptorGetter.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.TableDescriptorGetter.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.TableDescriptorGetter.html
index 9fbe400..b7a2a38 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.TableDescriptorGetter.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.TableDescriptorGetter.html
@@ -215,3746 +215,3748 @@
 207import 
org.apache.hadoop.hbase.util.VersionInfo;
 208import 
org.apache.hadoop.hbase.zookeeper.LoadBalancerTracker;
 209import 
org.apache.hadoop.hbase.zookeeper.MasterAddressTracker;
-210import 
org.apache.hadoop.hbase.zookeeper.MasterMaintenanceModeTracker;
-211import 
org.apache.hadoop.hbase.zookeeper.RegionNormalizerTracker;
-212import 
org.apache.hadoop.hbase.zookeeper.ZKClusterId;
-213import 
org.apache.hadoop.hbase.zookeeper.ZKUtil;
-214import 
org.apache.hadoop.hbase.zookeeper.ZKWatcher;
-215import 
org.apache.hadoop.hbase.zookeeper.ZNodePaths;
-216import 
org.apache.yetus.audience.InterfaceAudience;
-217import 
org.apache.zookeeper.KeeperException;
-218import org.eclipse.jetty.server.Server;
-219import 
org.eclipse.jetty.server.ServerConnector;
-220import 
org.eclipse.jetty.servlet.ServletHolder;
-221import 
org.eclipse.jetty.webapp.WebAppContext;
-222import org.slf4j.Logger;
-223import org.slf4j.LoggerFactory;
-224
-225import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-226import 
org.apache.hbase.thirdparty.com.google.common.collect.ImmutableSet;
-227import 
org.apache.hbase.thirdparty.com.google.common.collect.Lists;
-228import 
org.apache.hbase.thirdparty.com.google.common.collect.Maps;
-229
-230import 
org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
-231import 
org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState;
-232import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas;
-233import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceViolationPolicy;
-234import 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription;
-235import 
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos;
-236
-237/**
-238 * HMaster is the "master server" for 
HBase. An HBase cluster has one active
-239 * master.  If many masters are started, 
all compete.  Whichever wins goes on to
-240 * run the cluster.  All others park 
themselves in their constructor until
-241 * master or cluster shutdown or until 
the active master loses its lease in
-242 * zookeeper.  Thereafter, all running 
master jostle to take over master role.
-243 *
-244 * 

The Master can be asked shutdown the cluster. See {@link #shutdown()}. In -245 * this case it will tell all regionservers to go down and then wait on them -246 * all reporting in that they are down. This master will then shut itself down. -247 * -248 *

You can also shutdown just this master. Call {@link #stopMaster()}. -249 * -250 * @see org.apache.zookeeper.Watcher -251 */ -252@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.TOOLS) -253@SuppressWarnings("deprecation") -254public class HMaster extends HRegionServer implements MasterServices { -255 private static Logger LOG = LoggerFactory.getLogger(HMaster.class); -256 -257 /** -258 * Protection against zombie master. Started once Master accepts active responsibility and -259 * starts taking over responsibilities. Allows a finite time window before giving up ownership. -260 */ -261 private static class InitializationMonitor extends HasThread { -262/** The amount of time in milliseconds to sleep before checking initialization status. */ -263public static final String TIMEOUT_KEY = "hbase.master.initializationmonitor.timeout"; -264public static final long TIMEOUT_DEFAULT = TimeUnit.MILLISECONDS.convert(15, TimeUnit.MINUTES); -265 -266/** -267 * When timeout expired and initialization has not complete, call {@link System#exit(int)} when -268 * true, do nothing otherwise. -269 */ -270public static final String HALT_KEY = "hbase.master.initializationmonitor.haltontimeout"; -271public static final boolean HALT_DEFAULT = false; -272 -273private final HMaster master; -274private final long timeout; -275private final boolean haltOnTimeout; -276 -277/** Creates a Thread that monitors the {@link #isInitialized()} state. */ -278InitializationMonitor(HMaster master) { -279 super("MasterInitializationMonitor"); -280 this.master = master; -281 this.timeout = master.getConfiguration().getLong(TIMEOUT_KEY, TIMEOUT_DEFAULT); -282 this.haltOnTimeout = master.getConfiguration().getBoolean(HALT_KEY, HALT_DEFAULT); -283 this


[23/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.AssignRegionAction.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.AssignRegionAction.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.AssignRegionAction.html
index c307d41..d82bfd8 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.AssignRegionAction.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.AssignRegionAction.html
@@ -1020,8 +1020,8 @@
 1012  protected ClusterMetrics clusterStatus 
= null;
 1013  protected ServerName 
masterServerName;
 1014  protected MasterServices services;
-1015  protected boolean tablesOnMaster;
-1016  protected boolean 
onlySystemTablesOnMaster;
+1015  protected boolean 
onlySystemTablesOnMaster;
+1016  protected boolean maintenanceMode;
 1017
 1018  @Override
 1019  public void setConf(Configuration 
conf) {
@@ -1033,627 +1033,626 @@
 1025if (overallSlop < 0) overallSlop 
= 0;
 1026else if (overallSlop > 1) 
overallSlop = 1;
 1027
-1028this.tablesOnMaster = 
LoadBalancer.isTablesOnMaster(this.config);
-1029this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
-1030// If system tables on master, 
implies tablesOnMaster = true.
-1031if (this.onlySystemTablesOnMaster 
&& !this.tablesOnMaster) {
-1032  LOG.warn("Set " + TABLES_ON_MASTER 
+ "=true because " + SYSTEM_TABLES_ON_MASTER + "=true");
-1033  this.tablesOnMaster = true;
-1034}
-1035this.rackManager = new 
RackManager(getConf());
-1036if (useRegionFinder) {
-1037  regionFinder.setConf(conf);
-1038}
-1039// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
-1040LOG.info("slop=" + this.slop + ", 
tablesOnMaster=" + this.tablesOnMaster +
-1041  ", systemTablesOnMaster=" + 
this.onlySystemTablesOnMaster);
+1028this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
+1029
+1030this.rackManager = new 
RackManager(getConf());
+1031if (useRegionFinder) {
+1032  regionFinder.setConf(conf);
+1033}
+1034// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
+1035LOG.info("slop={}, 
systemTablesOnMaster={}",
+1036this.slop, 
this.onlySystemTablesOnMaster);
+1037  }
+1038
+1039  protected void setSlop(Configuration 
conf) {
+1040this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
+1041this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
 1042  }
 1043
-1044  protected void setSlop(Configuration 
conf) {
-1045this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
-1046this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
-1047  }
-1048
-1049  /**
-1050   * Check if a region belongs to some 
system table.
-1051   * If so, the primary replica may be 
expected to be put on the master regionserver.
-1052   */
-1053  public boolean 
shouldBeOnMaster(RegionInfo region) {
-1054return this.onlySystemTablesOnMaster 
&& region.getTable().isSystemTable();
-1055  }
-1056
-1057  /**
-1058   * Balance the regions that should be 
on master regionserver.
-1059   */
-1060  protected List 
balanceMasterRegions(Map> clusterMap) 
{
-1061if (masterServerName == null || 
clusterMap == null || clusterMap.size() <= 1) return null;
-1062List plans = 
null;
-1063List regions = 
clusterMap.get(masterServerName);
-1064if (regions != null) {
-1065  Iterator keyIt = 
null;
-1066  for (RegionInfo region: regions) 
{
-1067if (shouldBeOnMaster(region)) 
continue;
-1068
-1069// Find a non-master 
regionserver to host the region
-1070if (keyIt == null || 
!keyIt.hasNext()) {
-1071  keyIt = 
clusterMap.keySet().iterator();
-1072}
-1073ServerName dest = 
keyIt.next();
-1074if 
(masterServerName.equals(dest)) {
-1075  if (!keyIt.hasNext()) {
-1076keyIt = 
clusterMap.keySet().iterator();
-1077  }
-1078  dest = keyIt.next();
-1079}
-1080
-1081// Move this region away from 
the master regionserver
-1082RegionPlan plan = new 
RegionPlan(region, masterServerName, dest);
-1083if (plans == null) {
-1084  plans = new 
ArrayList<>();
-1085}
-1086plans.add(plan);
-1087  }
-1088}
-1089for (Map.Entry> server: clusterMap.entrySet()) {
-1090  if 
(masterServerName.equals(server.getKey())) continue;
-1091  for (RegionInfo region: 
server.getValue()) {
-1092if (!shoul

[26/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.html
index c13e4a4..f1c0bc3 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.html
@@ -769,423 +769,426 @@
 761   * RegionServers to check-in.
 762   */
 763  private int getMinToStart() {
-764// One server should be enough to get 
us off the ground.
-765int requiredMinToStart = 1;
-766if 
(LoadBalancer.isTablesOnMaster(master.getConfiguration())) {
-767  if 
(LoadBalancer.isSystemTablesOnlyOnMaster(master.getConfiguration())) {
-768// If Master is carrying regions 
but NOT user-space regions, it
-769// still shows as a 'server'. We 
need at least one more server to check
-770// in before we can start up so 
set defaultMinToStart to 2.
-771requiredMinToStart = 
requiredMinToStart + 1;
-772  }
-773}
-774int minToStart = 
this.master.getConfiguration().getInt(WAIT_ON_REGIONSERVERS_MINTOSTART, -1);
-775// Ensure we are never less than 
requiredMinToStart else stuff won't work.
-776return minToStart == -1 || minToStart 
< requiredMinToStart? requiredMinToStart: minToStart;
-777  }
-778
-779  /**
-780   * Wait for the region servers to 
report in.
-781   * We will wait until one of this 
condition is met:
-782   *  - the master is stopped
-783   *  - the 
'hbase.master.wait.on.regionservers.maxtostart' number of
-784   *region servers is reached
-785   *  - the 
'hbase.master.wait.on.regionservers.mintostart' is reached AND
-786   *   there have been no new region 
server in for
-787   *  
'hbase.master.wait.on.regionservers.interval' time AND
-788   *   the 
'hbase.master.wait.on.regionservers.timeout' is reached
-789   *
-790   * @throws InterruptedException
-791   */
-792  public void 
waitForRegionServers(MonitoredTask status) throws InterruptedException {
-793final long interval = 
this.master.getConfiguration().
-794
getLong(WAIT_ON_REGIONSERVERS_INTERVAL, 1500);
-795final long timeout = 
this.master.getConfiguration().
-796
getLong(WAIT_ON_REGIONSERVERS_TIMEOUT, 4500);
-797// Min is not an absolute; just a 
friction making us wait longer on server checkin.
-798int minToStart = getMinToStart();
-799int maxToStart = 
this.master.getConfiguration().
-800
getInt(WAIT_ON_REGIONSERVERS_MAXTOSTART, Integer.MAX_VALUE);
-801if (maxToStart < minToStart) {
-802  LOG.warn(String.format("The value 
of '%s' (%d) is set less than '%s' (%d), ignoring.",
-803  
WAIT_ON_REGIONSERVERS_MAXTOSTART, maxToStart,
-804  
WAIT_ON_REGIONSERVERS_MINTOSTART, minToStart));
-805  maxToStart = Integer.MAX_VALUE;
-806}
-807
-808long now =  
System.currentTimeMillis();
-809final long startTime = now;
-810long slept = 0;
-811long lastLogTime = 0;
-812long lastCountChange = startTime;
-813int count = countOfRegionServers();
-814int oldCount = 0;
-815// This while test is a little hard 
to read. We try to comment it in below but in essence:
-816// Wait if Master is not stopped and 
the number of regionservers that have checked-in is
-817// less than the maxToStart. Both of 
these conditions will be true near universally.
-818// Next, we will keep cycling if ANY 
of the following three conditions are true:
-819// 1. The time since a regionserver 
registered is < interval (means servers are actively checking in).
-820// 2. We are under the total 
timeout.
-821// 3. The count of servers is < 
minimum.
-822for (ServerListener listener: 
this.listeners) {
-823  listener.waiting();
-824}
-825while (!this.master.isStopped() 
&& !isClusterShutdown() && count < maxToStart &&
-826((lastCountChange + interval) 
> now || timeout > slept || count < minToStart)) {
-827  // Log some info at every interval 
time or if there is a change
-828  if (oldCount != count || 
lastLogTime + interval < now) {
-829lastLogTime = now;
-830String msg =
-831"Waiting on regionserver 
count=" + count + "; waited="+
-832slept + "ms, expecting 
min=" + minToStart + " server(s), max="+ getStrForMax(maxToStart) +
-833" server(s), " + 
"timeout=" + timeout + "ms, lastChange=" + (lastCountChange - now) + "ms";
-834LOG.info(msg);
-835status.setStatus(msg);
-836  }
-837
-838  // We sleep for some time
-839  final long sleepTime = 50;
-840  Thread.sleep(sleepTime);
-841  now =  
System.currentTimeMillis();
-842  slept = now - startTime;
-843
-844  oldCount = count;
-845  count = countOfReg

[17/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html
index c307d41..d82bfd8 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html
@@ -1020,8 +1020,8 @@
 1012  protected ClusterMetrics clusterStatus 
= null;
 1013  protected ServerName 
masterServerName;
 1014  protected MasterServices services;
-1015  protected boolean tablesOnMaster;
-1016  protected boolean 
onlySystemTablesOnMaster;
+1015  protected boolean 
onlySystemTablesOnMaster;
+1016  protected boolean maintenanceMode;
 1017
 1018  @Override
 1019  public void setConf(Configuration 
conf) {
@@ -1033,627 +1033,626 @@
 1025if (overallSlop < 0) overallSlop 
= 0;
 1026else if (overallSlop > 1) 
overallSlop = 1;
 1027
-1028this.tablesOnMaster = 
LoadBalancer.isTablesOnMaster(this.config);
-1029this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
-1030// If system tables on master, 
implies tablesOnMaster = true.
-1031if (this.onlySystemTablesOnMaster 
&& !this.tablesOnMaster) {
-1032  LOG.warn("Set " + TABLES_ON_MASTER 
+ "=true because " + SYSTEM_TABLES_ON_MASTER + "=true");
-1033  this.tablesOnMaster = true;
-1034}
-1035this.rackManager = new 
RackManager(getConf());
-1036if (useRegionFinder) {
-1037  regionFinder.setConf(conf);
-1038}
-1039// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
-1040LOG.info("slop=" + this.slop + ", 
tablesOnMaster=" + this.tablesOnMaster +
-1041  ", systemTablesOnMaster=" + 
this.onlySystemTablesOnMaster);
+1028this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
+1029
+1030this.rackManager = new 
RackManager(getConf());
+1031if (useRegionFinder) {
+1032  regionFinder.setConf(conf);
+1033}
+1034// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
+1035LOG.info("slop={}, 
systemTablesOnMaster={}",
+1036this.slop, 
this.onlySystemTablesOnMaster);
+1037  }
+1038
+1039  protected void setSlop(Configuration 
conf) {
+1040this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
+1041this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
 1042  }
 1043
-1044  protected void setSlop(Configuration 
conf) {
-1045this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
-1046this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
-1047  }
-1048
-1049  /**
-1050   * Check if a region belongs to some 
system table.
-1051   * If so, the primary replica may be 
expected to be put on the master regionserver.
-1052   */
-1053  public boolean 
shouldBeOnMaster(RegionInfo region) {
-1054return this.onlySystemTablesOnMaster 
&& region.getTable().isSystemTable();
-1055  }
-1056
-1057  /**
-1058   * Balance the regions that should be 
on master regionserver.
-1059   */
-1060  protected List 
balanceMasterRegions(Map> clusterMap) 
{
-1061if (masterServerName == null || 
clusterMap == null || clusterMap.size() <= 1) return null;
-1062List plans = 
null;
-1063List regions = 
clusterMap.get(masterServerName);
-1064if (regions != null) {
-1065  Iterator keyIt = 
null;
-1066  for (RegionInfo region: regions) 
{
-1067if (shouldBeOnMaster(region)) 
continue;
-1068
-1069// Find a non-master 
regionserver to host the region
-1070if (keyIt == null || 
!keyIt.hasNext()) {
-1071  keyIt = 
clusterMap.keySet().iterator();
-1072}
-1073ServerName dest = 
keyIt.next();
-1074if 
(masterServerName.equals(dest)) {
-1075  if (!keyIt.hasNext()) {
-1076keyIt = 
clusterMap.keySet().iterator();
-1077  }
-1078  dest = keyIt.next();
-1079}
-1080
-1081// Move this region away from 
the master regionserver
-1082RegionPlan plan = new 
RegionPlan(region, masterServerName, dest);
-1083if (plans == null) {
-1084  plans = new 
ArrayList<>();
-1085}
-1086plans.add(plan);
-1087  }
-1088}
-1089for (Map.Entry> server: clusterMap.entrySet()) {
-1090  if 
(masterServerName.equals(server.getKey())) continue;
-1091  for (RegionInfo region: 
server.getValue()) {
-1092if (!shouldBeOnMaster(region)) 
continue;
-1093
-1094// Move this region to the 
master regionserver
-1095RegionPlan plan = new 

[05/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.html
index 20e3eaa..b257d07 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.html
@@ -2493,1291 +2493,1293 @@
 2485  }
 2486
 2487  private boolean 
shouldRejectRequestsFromClient(HRegion region) {
-2488return 
regionServer.getReplicationSourceService().getSyncReplicationPeerInfoProvider()
-2489  
.checkState(region.getRegionInfo().getTable(), 
RejectRequestsFromClientStateChecker.get());
-2490  }
-2491
-2492  private void 
rejectIfInStandByState(HRegion region) throws DoNotRetryIOException {
-2493if 
(shouldRejectRequestsFromClient(region)) {
-2494  throw new DoNotRetryIOException(
-2495
region.getRegionInfo().getRegionNameAsString() + " is in STANDBY state.");
-2496}
-2497  }
-2498
-2499  /**
-2500   * Get data from a table.
-2501   *
-2502   * @param controller the RPC 
controller
-2503   * @param request the get request
-2504   * @throws ServiceException
-2505   */
-2506  @Override
-2507  public GetResponse get(final 
RpcController controller, final GetRequest request)
-2508  throws ServiceException {
-2509long before = 
EnvironmentEdgeManager.currentTime();
-2510OperationQuota quota = null;
-2511HRegion region = null;
-2512try {
-2513  checkOpen();
-2514  requestCount.increment();
-2515  rpcGetRequestCount.increment();
-2516  region = 
getRegion(request.getRegion());
-2517  rejectIfInStandByState(region);
-2518
-2519  GetResponse.Builder builder = 
GetResponse.newBuilder();
-2520  ClientProtos.Get get = 
request.getGet();
-2521  // An asynchbase client, 
https://github.com/OpenTSDB/asynchbase, starts by trying to do
-2522  // a get closest before. Throwing 
the UnknownProtocolException signals it that it needs
-2523  // to switch and do hbase2 
protocol (HBase servers do not tell clients what versions
-2524  // they are; its a problem for 
non-native clients like asynchbase. HBASE-20225.
-2525  if (get.hasClosestRowBefore() 
&& get.getClosestRowBefore()) {
-2526throw new 
UnknownProtocolException("Is this a pre-hbase-1.0.0 or asynchbase client? " +
-2527"Client is invoking 
getClosestRowBefore removed in hbase-2.0.0 replaced by " +
-2528"reverse Scan.");
-2529  }
-2530  Boolean existence = null;
-2531  Result r = null;
-2532  RpcCallContext context = 
RpcServer.getCurrentCall().orElse(null);
-2533  quota = 
getRpcQuotaManager().checkQuota(region, OperationQuota.OperationType.GET);
-2534
-2535  Get clientGet = 
ProtobufUtil.toGet(get);
-2536  if (get.getExistenceOnly() 
&& region.getCoprocessorHost() != null) {
-2537existence = 
region.getCoprocessorHost().preExists(clientGet);
-2538  }
-2539  if (existence == null) {
-2540if (context != null) {
-2541  r = get(clientGet, (region), 
null, context);
-2542} else {
-2543  // for test purpose
-2544  r = region.get(clientGet);
-2545}
-2546if (get.getExistenceOnly()) {
-2547  boolean exists = 
r.getExists();
-2548  if 
(region.getCoprocessorHost() != null) {
-2549exists = 
region.getCoprocessorHost().postExists(clientGet, exists);
-2550  }
-2551  existence = exists;
-2552}
-2553  }
-2554  if (existence != null) {
-2555ClientProtos.Result pbr =
-2556
ProtobufUtil.toResult(existence, region.getRegionInfo().getReplicaId() != 0);
-2557builder.setResult(pbr);
-2558  } else if (r != null) {
-2559ClientProtos.Result pbr;
-2560if 
(isClientCellBlockSupport(context) && controller instanceof 
HBaseRpcController
-2561&& 
VersionInfoUtil.hasMinimumVersion(context.getClientVersionInfo(), 1, 3)) {
-2562  pbr = 
ProtobufUtil.toResultNoData(r);
-2563  ((HBaseRpcController) 
controller).setCellScanner(CellUtil.createCellScanner(r
-2564  .rawCells()));
-2565  addSize(context, r, null);
-2566} else {
-2567  pbr = 
ProtobufUtil.toResult(r);
-2568}
-2569builder.setResult(pbr);
-2570  }
-2571  if (r != null) {
-2572quota.addGetResult(r);
-2573  }
-2574  return builder.build();
-2575} catch (IOException ie) {
-2576  throw new ServiceException(ie);
-2577} finally {
-2578  MetricsRegionServer mrs = 
regionServer.metricsRegionServer;
-2579  if (mrs != null) {
-2580TableDescriptor td = region != 
null? region.getTableDescriptor(): null;
-2581

[42/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/master/HMaster.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/master/HMaster.html 
b/devapidocs/org/apache/hadoop/hbase/master/HMaster.html
index 4fa473a..6f4077e 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/HMaster.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/HMaster.html
@@ -128,7 +128,7 @@ var activeTableTab = "activeTableTab";
 
 
 @InterfaceAudience.LimitedPrivate(value="Tools")
-public class HMaster
+public class HMaster
 extends HRegionServer
 implements MasterServices
 HMaster is the "master server" for HBase. An HBase cluster 
has one active
@@ -306,168 +306,172 @@ implements logCleaner 
 
 
-private MasterMaintenanceModeTracker
-maintenanceModeTracker 
+(package private) static https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true";
 title="class or interface in java.lang">String
+MAINTENANCE_MODE 
 
 
+private boolean
+maintenanceMode 
+
+
 static https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true";
 title="class or interface in java.lang">String
 MASTER 
 
-
+
 private long
 masterActiveTime 
 
-
+
 (package private) MasterAddressSyncer
 masterAddressSyncer 
 
-
+
 private boolean
 masterCheckCompression 
 
-
+
 private boolean
 masterCheckEncryption 
 
-
+
 private long
 masterFinishedInitializationTime 
 
-
+
 private org.eclipse.jetty.server.Server
 masterJettyServer
 jetty server for master to redirect requests to 
regionserver infoServer
 
 
-
+
 private int
 maxBlancingTime 
 
-
+
 private double
 maxRitPercent 
 
-
+
 private long
 mergePlanCount 
 
-
+
 (package private) MetaLocationSyncer
 metaLocationSyncer 
 
-
+
 (package private) MetricsMaster
 metricsMaster 
 
-
+
 private MobCompactionChore
 mobCompactChore 
 
-
+
 private IdLock
 mobCompactionLock 
 
-
+
 private https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">MapAtomicInteger>
 mobCompactionStates 
 
-
+
 private MasterMobCompactionThread
 mobCompactThread 
 
-
+
 private MasterProcedureManagerHost
 mpmHost 
 
-
+
 private RegionNormalizer
 normalizer 
 
-
+
 private RegionNormalizerChore
 normalizerChore 
 
-
+
 private boolean
 preLoadTableDescriptors 
 
-
+
 private ProcedureExecutor
 procedureExecutor 
 
-
+
 private WALProcedureStore
 procedureStore 
 
-
+
 private MasterQuotaManager
 quotaManager 
 
-
+
 private QuotaObserverChore
 quotaObserverChore 
 
-
+
 private RegionNormalizerTracker
 regionNormalizerTracker 
 
-
+
 private RegionServerTracker
 regionServerTracker 
 
-
+
 private ReplicationBarrierCleaner
 replicationBarrierCleaner 
 
-
+
 private ReplicationPeerManager
 replicationPeerManager 
 
-
+
 (package private) MemoryBoundedLogMessageBuffer
 rsFatals 
 
-
+
 private ServerManager
 serverManager 
 
-
+
 (package private) boolean
 serviceStarted 
 
-
+
 (package private) SnapshotManager
 snapshotManager 
 
-
+
 private SnapshotQuotaObserverChore
 snapshotQuotaChore 
 
-
+
 private SpaceQuotaSnapshotNotifier
 spaceQuotaSnapshotNotifier 
 
-
+
 private SplitOrMergeTracker
 splitOrMergeTracker 
 
-
+
 private long
 splitPlanCount 
 
-
+
 private SyncReplicationReplayWALManager
 syncReplicationReplayWALManager 
 
-
+
 private TableStateManager
 tableStateManager 
 
-
-private static 
org.apache.hbase.thirdparty.com.google.common.collect.ImmutableSetClass>
+
+private static 
org.apache.hbase.thirdparty.com.google.common.collect.ImmutableSetClass>
 UNSUPPORTED_PROCEDURES 
 
-
+
 private MasterWalManager
 walManager 
 
@@ -1535,7 +1539,7 @@ implements 
 
 LOG
-private static org.slf4j.Logger LOG
+private static org.slf4j.Logger LOG
 
 
 
@@ -1544,7 +1548,7 @@ implements 
 
 MASTER
-public static final https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true";
 title="class or interface in java.lang">String MASTER
+public static final https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true";
 title="class or interface in java.lang">String MASTER
 
 See Also:
 Constant
 Field Values
@@ -1557,7 +1561,7 @@ implements 
 
 activeMasterManager
-private final ActiveMasterManager activeMasterManager
+private final ActiveMasterManager activeMasterManager
 
 
 
@@ -1566,7 +1570,7 @@ implements 
 
 regionServerTracker
-private RegionServerTracker regionServerTracker
+private RegionServerTracker region

[03/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/testdevapidocs/index-all.html
--
diff --git a/testdevapidocs/index-all.html b/testdevapidocs/index-all.html
index 3ad74e3..c78f132 100644
--- a/testdevapidocs/index-all.html
+++ b/testdevapidocs/index-all.html
@@ -5361,6 +5361,8 @@
  
 CLASS_RULE
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterQosFunction
  
+CLASS_RULE
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 CLASS_RULE
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterRestartAfterDisablingTable
  
 CLASS_RULE
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterShutdown
@@ -13081,6 +13083,8 @@
 
 enabledTables
 - Variable in class org.apache.hadoop.hbase.IntegrationTestDDLMasterFailover
  
+enableMaintenanceMode()
 - Method in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 enablePeer(MasterProcedureEnv)
 - Method in class org.apache.hadoop.hbase.master.replication.TestModifyPeerProcedureRetryBackoff.TestModifyPeerProcedure
  
 enablePeer(String,
 int) - Method in class org.apache.hadoop.hbase.replication.TestMasterReplication
@@ -14665,6 +14669,8 @@
  
 FAMILYNAME
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterBalanceThrottling
  
+FAMILYNAME
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 familyName
 - Variable in class org.apache.hadoop.hbase.regionserver.TestBulkLoad.WalMatcher
  
 FAMILYNAME
 - Static variable in class org.apache.hadoop.hbase.regionserver.TestRegionMergeTransactionOnCluster
@@ -24189,6 +24195,8 @@
  
 LOG
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterOperationsForRegionReplicas
  
+LOG
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 LOG
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterRestartAfterDisablingTable
  
 log(String)
 - Method in class org.apache.hadoop.hbase.master.TestMasterRestartAfterDisablingTable
@@ -27251,6 +27259,8 @@
  
 name
 - Variable in class org.apache.hadoop.hbase.master.TestMasterOperationsForRegionReplicas
  
+name
 - Variable in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 name
 - Variable in class org.apache.hadoop.hbase.master.TestMasterRestartAfterDisablingTable
  
 name
 - Variable in class org.apache.hadoop.hbase.master.TestMirroringTableStateManager
@@ -37617,6 +37627,8 @@
  
 setUp()
 - Method in class org.apache.hadoop.hbase.master.TestMasterQosFunction
  
+setUp()
 - Method in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 setup()
 - Method in class org.apache.hadoop.hbase.master.TestMasterTransitions
  
 setUp()
 - Static method in class org.apache.hadoop.hbase.master.TestMetaAssignmentWithStopMaster
@@ -43045,6 +43057,8 @@
  
 tearDown()
 - Method in class org.apache.hadoop.hbase.master.TestMasterNoCluster
  
+tearDown()
 - Method in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 tearDown()
 - Method in class org.apache.hadoop.hbase.master.TestRestartCluster
  
 tearDown()
 - Static method in class org.apache.hadoop.hbase.master.TestServerCrashProcedureCarryingMetaStuck
@@ -44777,6 +44791,8 @@
  
 TEST_UTIL
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterOperationsForRegionReplicas
  
+TEST_UTIL
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 TEST_UTIL
 - Static variable in class org.apache.hadoop.hbase.master.TestMasterTransitions
  
 TEST_UTIL
 - Static variable in class org.apache.hadoop.hbase.master.TestMetaShutdownHandler
@@ -50859,6 +50875,8 @@
  
 TestExecutorService.TestEventHandler - Class in 
org.apache.hadoop.hbase.executor
  
+testExistingCluster()
 - Method in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 testExistingFilter()
 - Method in class org.apache.hadoop.hbase.rest.model.TestScannerModel
  
 testExistingManifest()
 - Method in class org.apache.hadoop.hbase.mapreduce.TestJarFinder
@@ -55257,6 +55275,10 @@
 
 TestMasterQuotasObserverWithMocks()
 - Constructor for class org.apache.hadoop.hbase.quotas.TestMasterQuotasObserverWithMocks
  
+TestMasterRepairMode - Class in org.apache.hadoop.hbase.master
+ 
+TestMasterRepairMode()
 - Constructor for class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 TestMasterReplication - Class in org.apache.hadoop.hbase.replication
  
 TestMasterReplication()
 - Constructor for class org.apache.hadoop.hbase.replication.TestMasterReplication
@@ -56977,6 +56999,8 @@
 
 testNewBlocksHaveDefaultChecksum()
 - Method in class org.apache.hadoop.hbase.io.hfile.TestChecksum
  
+testNewCluster()
 - Method in class org.apache.hadoop.hbase.master.TestMasterRepairMode
+ 
 testNewEntriesWhileStreaming()
 - Method in class org.apache.hadoop.hbase.replication.regionserver.TestWALEntryStream
 
 Tests that if writes come in while we have a stream open, 
we shou

[01/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
Repository: hbase-site
Updated Branches:
  refs/heads/asf-site 156057826 -> 3649682c3


http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/testdevapidocs/src-html/org/apache/hadoop/hbase/master/TestMasterRepairMode.html
--
diff --git 
a/testdevapidocs/src-html/org/apache/hadoop/hbase/master/TestMasterRepairMode.html
 
b/testdevapidocs/src-html/org/apache/hadoop/hbase/master/TestMasterRepairMode.html
new file mode 100644
index 000..806b007
--- /dev/null
+++ 
b/testdevapidocs/src-html/org/apache/hadoop/hbase/master/TestMasterRepairMode.html
@@ -0,0 +1,213 @@
+http://www.w3.org/TR/html4/loose.dtd";>
+
+
+Source code
+
+
+
+
+001/*
+002 * Licensed to the Apache Software 
Foundation (ASF) under one
+003 * or more contributor license 
agreements.  See the NOTICE file
+004 * distributed with this work for 
additional information
+005 * regarding copyright ownership.  The 
ASF licenses this file
+006 * to you under the Apache License, 
Version 2.0 (the
+007 * "License"); you may not use this file 
except in compliance
+008 * with the License.  You may obtain a 
copy of the License at
+009 *
+010 * 
http://www.apache.org/licenses/LICENSE-2.0
+011 *
+012 * Unless required by applicable law or 
agreed to in writing, software
+013 * distributed under the License is 
distributed on an "AS IS" BASIS,
+014 * WITHOUT WARRANTIES OR CONDITIONS OF 
ANY KIND, either express or implied.
+015 * See the License for the specific 
language governing permissions and
+016 * limitations under the License.
+017 */
+018package org.apache.hadoop.hbase.master;
+019
+020import static 
org.junit.Assert.assertNotNull;
+021import static 
org.junit.Assert.assertTrue;
+022import static org.junit.Assert.fail;
+023
+024import java.util.Arrays;
+025import java.util.stream.Stream;
+026import java.util.stream.StreamSupport;
+027
+028import 
org.apache.hadoop.conf.Configuration;
+029import 
org.apache.hadoop.hbase.HBaseClassTestRule;
+030import 
org.apache.hadoop.hbase.HBaseTestingUtility;
+031import 
org.apache.hadoop.hbase.HConstants;
+032import 
org.apache.hadoop.hbase.StartMiniClusterOption;
+033import 
org.apache.hadoop.hbase.TableName;
+034import 
org.apache.hadoop.hbase.client.Connection;
+035import 
org.apache.hadoop.hbase.client.Put;
+036import 
org.apache.hadoop.hbase.client.Result;
+037import 
org.apache.hadoop.hbase.client.ResultScanner;
+038import 
org.apache.hadoop.hbase.client.Scan;
+039import 
org.apache.hadoop.hbase.client.Table;
+040import 
org.apache.hadoop.hbase.testclassification.MasterTests;
+041import 
org.apache.hadoop.hbase.testclassification.MediumTests;
+042import 
org.apache.hadoop.hbase.util.Bytes;
+043
+044import org.junit.After;
+045import org.junit.Before;
+046import org.junit.ClassRule;
+047import org.junit.Rule;
+048import org.junit.Test;
+049import 
org.junit.experimental.categories.Category;
+050import org.junit.rules.TestName;
+051
+052import org.slf4j.Logger;
+053import org.slf4j.LoggerFactory;
+054
+055@Category({MasterTests.class, 
MediumTests.class})
+056public class TestMasterRepairMode {
+057
+058  @ClassRule
+059  public static final HBaseClassTestRule 
CLASS_RULE =
+060  
HBaseClassTestRule.forClass(TestMasterRepairMode.class);
+061
+062  @Rule
+063  public TestName name = new 
TestName();
+064
+065  private static final Logger LOG = 
LoggerFactory.getLogger(TestMasterRepairMode.class);
+066
+067  private static final byte[] FAMILYNAME 
= Bytes.toBytes("fam");
+068
+069  private static HBaseTestingUtility 
TEST_UTIL;
+070
+071  @Before
+072  public void setUp() throws Exception 
{
+073TEST_UTIL = new 
HBaseTestingUtility();
+074  }
+075
+076  @After
+077  public void tearDown() throws Exception 
{
+078TEST_UTIL.shutdownMiniCluster();
+079  }
+080
+081  private void enableMaintenanceMode() 
{
+082Configuration c = 
TEST_UTIL.getConfiguration();
+083
c.setBoolean(HMaster.MAINTENANCE_MODE, true);
+084
c.setInt("hbase.master.init.timeout.localHBaseCluster", 3);
+085  }
+086
+087  @Test
+088  public void testNewCluster() throws 
Exception {
+089enableMaintenanceMode();
+090
+091
TEST_UTIL.startMiniCluster(StartMiniClusterOption.builder()
+092.numRegionServers(0)
+093.numDataNodes(3)
+094.build());
+095
+096Connection conn = 
TEST_UTIL.getConnection();
+097
assertTrue(conn.getAdmin().isMasterInMaintenanceMode());
+098
+099try (Table table = 
conn.getTable(TableName.META_TABLE_NAME);
+100ResultScanner scanner = 
table.getScanner(new Scan())) {
+101  assertNotNull("Could not read 
meta.", scanner.next());
+102}
+103  }
+104
+105  @Test
+106  public void testExistingCluster() 
throws Exception {
+107TableName testRepairMode = 
TableName.valueOf(name.getMethodName());
+108
+109TEST_UTIL.startMiniCluster();
+110Table t = 
TEST_UTIL.createTable(testRepairMode, FAMILYNAME);
+111Put p = new 
Put(Bytes.toBytes("r"));
+112p.add

[11/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.LogDelegate.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.LogDelegate.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.LogDelegate.html
index 20e3eaa..b257d07 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.LogDelegate.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.LogDelegate.html
@@ -2493,1291 +2493,1293 @@
 2485  }
 2486
 2487  private boolean 
shouldRejectRequestsFromClient(HRegion region) {
-2488return 
regionServer.getReplicationSourceService().getSyncReplicationPeerInfoProvider()
-2489  
.checkState(region.getRegionInfo().getTable(), 
RejectRequestsFromClientStateChecker.get());
-2490  }
-2491
-2492  private void 
rejectIfInStandByState(HRegion region) throws DoNotRetryIOException {
-2493if 
(shouldRejectRequestsFromClient(region)) {
-2494  throw new DoNotRetryIOException(
-2495
region.getRegionInfo().getRegionNameAsString() + " is in STANDBY state.");
-2496}
-2497  }
-2498
-2499  /**
-2500   * Get data from a table.
-2501   *
-2502   * @param controller the RPC 
controller
-2503   * @param request the get request
-2504   * @throws ServiceException
-2505   */
-2506  @Override
-2507  public GetResponse get(final 
RpcController controller, final GetRequest request)
-2508  throws ServiceException {
-2509long before = 
EnvironmentEdgeManager.currentTime();
-2510OperationQuota quota = null;
-2511HRegion region = null;
-2512try {
-2513  checkOpen();
-2514  requestCount.increment();
-2515  rpcGetRequestCount.increment();
-2516  region = 
getRegion(request.getRegion());
-2517  rejectIfInStandByState(region);
-2518
-2519  GetResponse.Builder builder = 
GetResponse.newBuilder();
-2520  ClientProtos.Get get = 
request.getGet();
-2521  // An asynchbase client, 
https://github.com/OpenTSDB/asynchbase, starts by trying to do
-2522  // a get closest before. Throwing 
the UnknownProtocolException signals it that it needs
-2523  // to switch and do hbase2 
protocol (HBase servers do not tell clients what versions
-2524  // they are; its a problem for 
non-native clients like asynchbase. HBASE-20225.
-2525  if (get.hasClosestRowBefore() 
&& get.getClosestRowBefore()) {
-2526throw new 
UnknownProtocolException("Is this a pre-hbase-1.0.0 or asynchbase client? " +
-2527"Client is invoking 
getClosestRowBefore removed in hbase-2.0.0 replaced by " +
-2528"reverse Scan.");
-2529  }
-2530  Boolean existence = null;
-2531  Result r = null;
-2532  RpcCallContext context = 
RpcServer.getCurrentCall().orElse(null);
-2533  quota = 
getRpcQuotaManager().checkQuota(region, OperationQuota.OperationType.GET);
-2534
-2535  Get clientGet = 
ProtobufUtil.toGet(get);
-2536  if (get.getExistenceOnly() 
&& region.getCoprocessorHost() != null) {
-2537existence = 
region.getCoprocessorHost().preExists(clientGet);
-2538  }
-2539  if (existence == null) {
-2540if (context != null) {
-2541  r = get(clientGet, (region), 
null, context);
-2542} else {
-2543  // for test purpose
-2544  r = region.get(clientGet);
-2545}
-2546if (get.getExistenceOnly()) {
-2547  boolean exists = 
r.getExists();
-2548  if 
(region.getCoprocessorHost() != null) {
-2549exists = 
region.getCoprocessorHost().postExists(clientGet, exists);
-2550  }
-2551  existence = exists;
-2552}
-2553  }
-2554  if (existence != null) {
-2555ClientProtos.Result pbr =
-2556
ProtobufUtil.toResult(existence, region.getRegionInfo().getReplicaId() != 0);
-2557builder.setResult(pbr);
-2558  } else if (r != null) {
-2559ClientProtos.Result pbr;
-2560if 
(isClientCellBlockSupport(context) && controller instanceof 
HBaseRpcController
-2561&& 
VersionInfoUtil.hasMinimumVersion(context.getClientVersionInfo(), 1, 3)) {
-2562  pbr = 
ProtobufUtil.toResultNoData(r);
-2563  ((HBaseRpcController) 
controller).setCellScanner(CellUtil.createCellScanner(r
-2564  .rawCells()));
-2565  addSize(context, r, null);
-2566} else {
-2567  pbr = 
ProtobufUtil.toResult(r);
-2568}
-2569builder.setResult(pbr);
-2570  }
-2571  if (r != null) {
-2572quota.addGetResult(r);
-2573  }
-2574  return builder.build();
-2575} catch (IOException ie) {
-2576  throw new ServiceException(ie);
-2577} finally {
-2578  MetricsRegionServer mrs = 
regionServer.metricsRegionServer;
-2579  if (mrs != null) {
-2580TableDescriptor t

[44/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/book.html
--
diff --git a/book.html b/book.html
index 7a3f350..623c48c 100644
--- a/book.html
+++ b/book.html
@@ -25204,6 +25204,28 @@ To invoke:
 
 
 
+
+130.1.4. Maintenance Mode
+
+If the cluster has gotten stuck in some state and the standard techniques 
aren’t making progress,
+ it is possible to restart the cluster in "maintenance mode." This mode 
features drastically
+ reduced capabilities and surface area, making it easier to enact very 
low-level changes such
+ as repairing/recovering the hbase:meta table.
+
+
+To enter maintenance mode, set hbase.master.maintenance_mode 
to true either in your
+hbase-site.xml or via system propery when starting the master 
process (-D…​=true). Entering
+and exiting this mode requires a service restart, however the typical use will 
be when HBase Master
+is already facing startup difficulties.
+
+
+When maintenance mode is enabled, the master will host all system tables - 
ensure that it has
+enough memory to do so. RegionServers will not be assigned any regions from 
user-space tables;
+in fact, they will go completely unused while in maintenance mode. 
Additionally, the master will
+not load any coprocessors, will not run any normalization or merge/split 
operations, and will not
+enforce quotas.
+
+
 
 
 130.2. External Tools
@@ -41302,7 +41324,7 @@ 
org/apache/hadoop/hbase/security/access/AccessControlClient.revoke:(Lorg/apache/
 
 
 Version 3.0.0-SNAPSHOT
-Last updated 2018-10-18 14:33:07 UTC
+Last updated 2018-10-19 14:32:59 UTC
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/bulk-loads.html
--
diff --git a/bulk-loads.html b/bulk-loads.html
index 15bb3bf..d8c8838 100644
--- a/bulk-loads.html
+++ b/bulk-loads.html
@@ -7,7 +7,7 @@
   
 
 
-
+
 
 Apache HBase –  
   Bulk Loads in Apache HBase (TM)
@@ -316,7 +316,7 @@ under the License. -->
 https://www.apache.org/";>The Apache Software 
Foundation.
 All rights reserved.  
 
-  Last Published: 
2018-10-18
+  Last Published: 
2018-10-19
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/checkstyle-aggregate.html
--
diff --git a/checkstyle-aggregate.html b/checkstyle-aggregate.html
index d59cbc5..f3f40d9 100644
--- a/checkstyle-aggregate.html
+++ b/checkstyle-aggregate.html
@@ -7,7 +7,7 @@
   
 
 
-
+
 
 Apache HBase – Checkstyle Results
 
@@ -291,7 +291,7 @@
  Warnings
  Errors
 
-3793
+3794
 0
 0
 15111
@@ -60240,919 +60240,919 @@
 sizes
 LineLength
 Line is longer than 100 characters (found 101).
-451
+452
 
  Error
 indentation
 Indentation
 'ctor def' child has incorrect indentation level 7, expected level should 
be 6.
-454
+455
 
  Error
 indentation
 Indentation
 'ctor def' child has incorrect indentation level 7, expected level should 
be 6.
-455
+456
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 101).
-465
+466
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 105).
-467
+468
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 109).
-468
+469
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 103).
-470
+471
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 118).
-471
+472
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 120).
-472
+473
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 103).
-473
+474
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 115).
-477
+478
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 104).
-506
+517
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 114).
-651
+662
 
  Error
 sizes
 LineLength
 Line is longer than 100 characters (found 131).
-665
+676
 
  Error
 blocks
 NeedBraces
 'if' construct must use '{}'s.
-795
+806
 
  Error
 sizes
 MethodLength
-Method length is 279 lines (max allowed is 150).
-893
+Method length is 286 lines (max allowed is 150).
+904
 
  Error
 indentation
 Indentation
 'method def' child has incorrect indentation level 3, expected level 
should be 4.
-1384
+1402
 
  Error
 indentation
 Indentation
 'method def' child has incorrect indentation level 3, expected level 
should be 4.
-1386
+1404
 
  Error
 indentation
 Indentation
 'method def' child has incorrect indentation level 3, expected level 
should be 4.
-1388
+1406
 
  Error
 indentation
 Indentation
 'method def' child has incorrect indentation level 3, expected level 
should be 4.
-1390
+1408
 
  Error
 indentation
 Indentation
 'method def' child has incorrect indentation level 3, expected l

[21/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.MoveRegionAction.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.MoveRegionAction.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.MoveRegionAction.html
index c307d41..d82bfd8 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.MoveRegionAction.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.MoveRegionAction.html
@@ -1020,8 +1020,8 @@
 1012  protected ClusterMetrics clusterStatus 
= null;
 1013  protected ServerName 
masterServerName;
 1014  protected MasterServices services;
-1015  protected boolean tablesOnMaster;
-1016  protected boolean 
onlySystemTablesOnMaster;
+1015  protected boolean 
onlySystemTablesOnMaster;
+1016  protected boolean maintenanceMode;
 1017
 1018  @Override
 1019  public void setConf(Configuration 
conf) {
@@ -1033,627 +1033,626 @@
 1025if (overallSlop < 0) overallSlop 
= 0;
 1026else if (overallSlop > 1) 
overallSlop = 1;
 1027
-1028this.tablesOnMaster = 
LoadBalancer.isTablesOnMaster(this.config);
-1029this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
-1030// If system tables on master, 
implies tablesOnMaster = true.
-1031if (this.onlySystemTablesOnMaster 
&& !this.tablesOnMaster) {
-1032  LOG.warn("Set " + TABLES_ON_MASTER 
+ "=true because " + SYSTEM_TABLES_ON_MASTER + "=true");
-1033  this.tablesOnMaster = true;
-1034}
-1035this.rackManager = new 
RackManager(getConf());
-1036if (useRegionFinder) {
-1037  regionFinder.setConf(conf);
-1038}
-1039// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
-1040LOG.info("slop=" + this.slop + ", 
tablesOnMaster=" + this.tablesOnMaster +
-1041  ", systemTablesOnMaster=" + 
this.onlySystemTablesOnMaster);
+1028this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
+1029
+1030this.rackManager = new 
RackManager(getConf());
+1031if (useRegionFinder) {
+1032  regionFinder.setConf(conf);
+1033}
+1034// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
+1035LOG.info("slop={}, 
systemTablesOnMaster={}",
+1036this.slop, 
this.onlySystemTablesOnMaster);
+1037  }
+1038
+1039  protected void setSlop(Configuration 
conf) {
+1040this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
+1041this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
 1042  }
 1043
-1044  protected void setSlop(Configuration 
conf) {
-1045this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
-1046this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
-1047  }
-1048
-1049  /**
-1050   * Check if a region belongs to some 
system table.
-1051   * If so, the primary replica may be 
expected to be put on the master regionserver.
-1052   */
-1053  public boolean 
shouldBeOnMaster(RegionInfo region) {
-1054return this.onlySystemTablesOnMaster 
&& region.getTable().isSystemTable();
-1055  }
-1056
-1057  /**
-1058   * Balance the regions that should be 
on master regionserver.
-1059   */
-1060  protected List 
balanceMasterRegions(Map> clusterMap) 
{
-1061if (masterServerName == null || 
clusterMap == null || clusterMap.size() <= 1) return null;
-1062List plans = 
null;
-1063List regions = 
clusterMap.get(masterServerName);
-1064if (regions != null) {
-1065  Iterator keyIt = 
null;
-1066  for (RegionInfo region: regions) 
{
-1067if (shouldBeOnMaster(region)) 
continue;
-1068
-1069// Find a non-master 
regionserver to host the region
-1070if (keyIt == null || 
!keyIt.hasNext()) {
-1071  keyIt = 
clusterMap.keySet().iterator();
-1072}
-1073ServerName dest = 
keyIt.next();
-1074if 
(masterServerName.equals(dest)) {
-1075  if (!keyIt.hasNext()) {
-1076keyIt = 
clusterMap.keySet().iterator();
-1077  }
-1078  dest = keyIt.next();
-1079}
-1080
-1081// Move this region away from 
the master regionserver
-1082RegionPlan plan = new 
RegionPlan(region, masterServerName, dest);
-1083if (plans == null) {
-1084  plans = new 
ArrayList<>();
-1085}
-1086plans.add(plan);
-1087  }
-1088}
-1089for (Map.Entry> server: clusterMap.entrySet()) {
-1090  if 
(masterServerName.equals(server.getKey())) continue;
-1091  for (RegionInfo region: 
server.getValue()) {
-1092if (!shouldBeOnMaste

hbase-site git commit: INFRA-10751 Empty commit

2018-10-19 Thread git-site-role
Repository: hbase-site
Updated Branches:
  refs/heads/asf-site 3649682c3 -> f8c3fd2b4


INFRA-10751 Empty commit


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

Branch: refs/heads/asf-site
Commit: f8c3fd2b418afdc43a7a6a36cfbc9f502b3286c1
Parents: 3649682
Author: jenkins 
Authored: Fri Oct 19 14:53:15 2018 +
Committer: jenkins 
Committed: Fri Oct 19 14:53:15 2018 +

--

--




[12/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.html
index 90087b4..b2a9771 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.html
@@ -956,2857 +956,2858 @@
 948  // Try and register with the 
Master; tell it we are here.  Break if server is stopped or the
 949  // clusterup flag is down or hdfs 
went wacky. Once registered successfully, go ahead and start
 950  // up all Services. Use 
RetryCounter to get backoff in case Master is struggling to come up.
-951  RetryCounterFactory rcf = new 
RetryCounterFactory(Integer.MAX_VALUE,
-952  this.sleeper.getPeriod(), 1000 
* 60 * 5);
-953  RetryCounter rc = rcf.create();
-954  while (keepLooping()) {
-955RegionServerStartupResponse w = 
reportForDuty();
-956if (w == null) {
-957  long sleepTime = 
rc.getBackoffTimeAndIncrementAttempts();
-958  LOG.warn("reportForDuty failed; 
sleeping {} ms and then retrying.", sleepTime);
-959  
this.sleeper.sleep(sleepTime);
-960} else {
-961  
handleReportForDutyResponse(w);
-962  break;
-963}
-964  }
-965
-966  if (!isStopped() && 
isHealthy()) {
-967// start the snapshot handler and 
other procedure handlers,
-968// since the server is ready to 
run
-969if (this.rspmHost != null) {
-970  this.rspmHost.start();
-971}
-972// Start the Quota Manager
-973if (this.rsQuotaManager != null) 
{
-974  
rsQuotaManager.start(getRpcServer().getScheduler());
-975}
-976if (this.rsSpaceQuotaManager != 
null) {
-977  
this.rsSpaceQuotaManager.start();
-978}
-979  }
-980
-981  // We registered with the Master.  
Go into run mode.
-982  long lastMsg = 
System.currentTimeMillis();
-983  long oldRequestCount = -1;
-984  // The main run loop.
-985  while (!isStopped() && 
isHealthy()) {
-986if (!isClusterUp()) {
-987  if (isOnlineRegionsEmpty()) {
-988stop("Exiting; cluster 
shutdown set and not carrying any regions");
-989  } else if (!this.stopping) {
-990this.stopping = true;
-991LOG.info("Closing user 
regions");
-992
closeUserRegions(this.abortRequested);
-993  } else if (this.stopping) {
-994boolean allUserRegionsOffline 
= areAllUserRegionsOffline();
-995if (allUserRegionsOffline) 
{
-996  // Set stopped if no more 
write requests tp meta tables
-997  // since last time we went 
around the loop.  Any open
-998  // meta regions will be 
closed on our way out.
-999  if (oldRequestCount == 
getWriteRequestCount()) {
-1000stop("Stopped; only 
catalog regions remaining online");
-1001break;
-1002  }
-1003  oldRequestCount = 
getWriteRequestCount();
-1004} else {
-1005  // Make sure all regions 
have been closed -- some regions may
-1006  // have not got it because 
we were splitting at the time of
-1007  // the call to 
closeUserRegions.
-1008  
closeUserRegions(this.abortRequested);
-1009}
-1010LOG.debug("Waiting on " + 
getOnlineRegionsAsPrintableString());
-1011  }
-1012}
-1013long now = 
System.currentTimeMillis();
-1014if ((now - lastMsg) >= 
msgInterval) {
-1015  tryRegionServerReport(lastMsg, 
now);
-1016  lastMsg = 
System.currentTimeMillis();
-1017}
-1018if (!isStopped() && 
!isAborted()) {
-1019  this.sleeper.sleep();
-1020}
-1021  } // for
-1022} catch (Throwable t) {
-1023  if (!rpcServices.checkOOME(t)) {
-1024String prefix = t instanceof 
YouAreDeadException? "": "Unhandled: ";
-1025abort(prefix + t.getMessage(), 
t);
-1026  }
-1027}
-1028if (this.leases != null) {
-1029  
this.leases.closeAfterLeasesExpire();
-1030}
-1031if (this.splitLogWorker != null) {
-1032  splitLogWorker.stop();
-1033}
-1034if (this.infoServer != null) {
-1035  LOG.info("Stopping infoServer");
-1036  try {
-1037this.infoServer.stop();
-1038  } catch (Exception e) {
-1039LOG.error("Failed to stop 
infoServer", e);
-1040  }
-1041}
-1042// Send cache a shutdown.
-1043if (cacheConfig != null && 
cacheConfig.isBlockCacheEnabled()) {
-1044  
cacheConfig.getBlockCache().shutdown();
-1045}
-1046
mobCacheConfig.getMobFi

[28/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.html
index 684e709..4365cc5 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterRpcServices.html
@@ -361,7 +361,7 @@
 353  throws IOException {
 354// RpcServer at HM by default enable 
ByteBufferPool iff HM having user table region in it
 355boolean reservoirEnabled = 
conf.getBoolean(RESERVOIR_ENABLED_KEY,
-356
(LoadBalancer.isTablesOnMaster(conf) && 
!LoadBalancer.isSystemTablesOnlyOnMaster(conf)));
+356
LoadBalancer.isMasterCanHostUserRegions(conf));
 357try {
 358  return 
RpcServerFactory.createRpcServer(server, name, getServices(),
 359  bindAddress, // use final 
bindAddress for this server.
@@ -1532,934 +1532,930 @@
 1524  final RpcController controller,
 1525  final IsInMaintenanceModeRequest 
request) throws ServiceException {
 1526IsInMaintenanceModeResponse.Builder 
response = IsInMaintenanceModeResponse.newBuilder();
-1527try {
-1528  
response.setInMaintenanceMode(master.isInMaintenanceMode());
-1529} catch (IOException e) {
-1530  throw new ServiceException(e);
-1531}
-1532return response.build();
-1533  }
-1534
-1535  @Override
-1536  public UnassignRegionResponse 
unassignRegion(RpcController controller,
-1537  UnassignRegionRequest req) throws 
ServiceException {
-1538try {
-1539  final byte [] regionName = 
req.getRegion().getValue().toByteArray();
-1540  RegionSpecifierType type = 
req.getRegion().getType();
-1541  final boolean force = 
req.getForce();
-1542  UnassignRegionResponse urr = 
UnassignRegionResponse.newBuilder().build();
-1543
-1544  master.checkInitialized();
-1545  if (type != 
RegionSpecifierType.REGION_NAME) {
-1546LOG.warn("unassignRegion 
specifier type: expected: " + RegionSpecifierType.REGION_NAME
-1547  + " actual: " + type);
-1548  }
-1549  Pair 
pair =
-1550
MetaTableAccessor.getRegion(master.getConnection(), regionName);
-1551  if 
(Bytes.equals(RegionInfoBuilder.FIRST_META_REGIONINFO.getRegionName(),regionName))
 {
-1552pair = new 
Pair<>(RegionInfoBuilder.FIRST_META_REGIONINFO,
-1553
master.getMetaTableLocator().getMetaRegionLocation(master.getZooKeeper()));
-1554  }
-1555  if (pair == null) {
-1556throw new 
UnknownRegionException(Bytes.toString(regionName));
-1557  }
-1558
-1559  RegionInfo hri = 
pair.getFirst();
-1560  if (master.cpHost != null) {
-1561master.cpHost.preUnassign(hri, 
force);
-1562  }
-1563  
LOG.debug(master.getClientIdAuditPrefix() + " unassign " + 
hri.getRegionNameAsString()
-1564  + " in current location if it 
is online and reassign.force=" + force);
-1565  
master.getAssignmentManager().unassign(hri);
-1566  if (master.cpHost != null) {
-1567master.cpHost.postUnassign(hri, 
force);
-1568  }
-1569
-1570  return urr;
-1571} catch (IOException ioe) {
-1572  throw new ServiceException(ioe);
-1573}
-1574  }
-1575
-1576  @Override
-1577  public 
ReportRegionStateTransitionResponse reportRegionStateTransition(RpcController 
c,
-1578  ReportRegionStateTransitionRequest 
req) throws ServiceException {
-1579try {
-1580  master.checkServiceStarted();
-1581  return 
master.getAssignmentManager().reportRegionStateTransition(req);
-1582} catch (IOException ioe) {
-1583  throw new ServiceException(ioe);
-1584}
-1585  }
-1586
-1587  @Override
-1588  public SetQuotaResponse 
setQuota(RpcController c, SetQuotaRequest req)
-1589  throws ServiceException {
-1590try {
-1591  master.checkInitialized();
-1592  return 
master.getMasterQuotaManager().setQuota(req);
-1593} catch (Exception e) {
-1594  throw new ServiceException(e);
-1595}
-1596  }
-1597
-1598  @Override
-1599  public 
MajorCompactionTimestampResponse getLastMajorCompactionTimestamp(RpcController 
controller,
-1600  MajorCompactionTimestampRequest 
request) throws ServiceException {
-1601
MajorCompactionTimestampResponse.Builder response =
-1602
MajorCompactionTimestampResponse.newBuilder();
-1603try {
-1604  master.checkInitialized();
-1605  
response.setCompactionTimestamp(master.getLastMajorCompactionTimestamp(ProtobufUtil
-1606  
.toTableName(request.getTableName(;
-1607} catch (IOException e) {
-1608  throw new ServiceException(e);
-1609}
-1610return response.build();
-1611  }
-1612
-1613  @Override
-1614  public 
MajorCompactionTimestampRespons

[43/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html 
b/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
index 38f7cc7..60feda5 100644
--- a/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/backup/package-tree.html
@@ -168,9 +168,9 @@
 java.lang.https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true";
 title="class or interface in java.lang">Enum (implements java.lang.https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true";
 title="class or interface in java.lang">Comparable, java.io.https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true";
 title="class or interface in java.io">Serializable)
 
 org.apache.hadoop.hbase.backup.BackupType
-org.apache.hadoop.hbase.backup.BackupRestoreConstants.BackupCommand
-org.apache.hadoop.hbase.backup.BackupInfo.BackupPhase
 org.apache.hadoop.hbase.backup.BackupInfo.BackupState
+org.apache.hadoop.hbase.backup.BackupInfo.BackupPhase
+org.apache.hadoop.hbase.backup.BackupRestoreConstants.BackupCommand
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/client/package-tree.html 
b/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
index 5efd861..3b31a41 100644
--- a/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/client/package-tree.html
@@ -555,24 +555,24 @@
 
 java.lang.https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true";
 title="class or interface in java.lang">Enum (implements java.lang.https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true";
 title="class or interface in java.lang">Comparable, java.io.https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true";
 title="class or interface in java.io">Serializable)
 
-org.apache.hadoop.hbase.client.AsyncProcessTask.SubmittedRows
-org.apache.hadoop.hbase.client.Consistency
-org.apache.hadoop.hbase.client.RequestController.ReturnCode
+org.apache.hadoop.hbase.client.Scan.ReadType
 org.apache.hadoop.hbase.client.CompactionState
-org.apache.hadoop.hbase.client.MobCompactPartitionPolicy
-org.apache.hadoop.hbase.client.TableState.State
 org.apache.hadoop.hbase.client.AsyncScanSingleRegionRpcRetryingCaller.ScanResumerState
-org.apache.hadoop.hbase.client.Scan.ReadType
-org.apache.hadoop.hbase.client.SnapshotType
-org.apache.hadoop.hbase.client.AbstractResponse.ResponseType
+org.apache.hadoop.hbase.client.Consistency
 org.apache.hadoop.hbase.client.AsyncScanSingleRegionRpcRetryingCaller.ScanControllerState
+org.apache.hadoop.hbase.client.ScannerCallable.MoreResults
+org.apache.hadoop.hbase.client.CompactType
+org.apache.hadoop.hbase.client.TableState.State
+org.apache.hadoop.hbase.client.RegionLocateType
 org.apache.hadoop.hbase.client.MasterSwitchType
-org.apache.hadoop.hbase.client.AsyncRequestFutureImpl.Retry
+org.apache.hadoop.hbase.client.MobCompactPartitionPolicy
+org.apache.hadoop.hbase.client.AsyncProcessTask.SubmittedRows
+org.apache.hadoop.hbase.client.SnapshotType
 org.apache.hadoop.hbase.client.IsolationLevel
+org.apache.hadoop.hbase.client.AbstractResponse.ResponseType
 org.apache.hadoop.hbase.client.Durability
-org.apache.hadoop.hbase.client.CompactType
-org.apache.hadoop.hbase.client.ScannerCallable.MoreResults
-org.apache.hadoop.hbase.client.RegionLocateType
+org.apache.hadoop.hbase.client.AsyncRequestFutureImpl.Retry
+org.apache.hadoop.hbase.client.RequestController.ReturnCode
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/coprocessor/package-tree.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/coprocessor/package-tree.html 
b/devapidocs/org/apache/hadoop/hbase/coprocessor/package-tree.html
index 329f62f..e67b778 100644
--- a/devapidocs/org/apache/hadoop/hbase/coprocessor/package-tree.html
+++ b/devapidocs/org/apache/hadoop/hbase/coprocessor/package-tree.html
@@ -201,8 +201,8 @@
 
 java.lang.https://docs.oracle.com/javase/8/docs/api/java/lang/Enum.html?is-external=true";
 title="class or interface in java.lang">Enum (implements java.lang.https://docs.oracle.com/javase/8/docs/api/java/lang/Comparable.html?is-external=true";
 title="class or interface in java.lang">Comparable, java.io.https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true";
 title="class or interface in java.io">Serializable)
 
-org.apache.hadoop.hbase.coprocessor.RegionObserver

[18/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.DefaultRackManager.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.DefaultRackManager.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.DefaultRackManager.html
index c307d41..d82bfd8 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.DefaultRackManager.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.DefaultRackManager.html
@@ -1020,8 +1020,8 @@
 1012  protected ClusterMetrics clusterStatus 
= null;
 1013  protected ServerName 
masterServerName;
 1014  protected MasterServices services;
-1015  protected boolean tablesOnMaster;
-1016  protected boolean 
onlySystemTablesOnMaster;
+1015  protected boolean 
onlySystemTablesOnMaster;
+1016  protected boolean maintenanceMode;
 1017
 1018  @Override
 1019  public void setConf(Configuration 
conf) {
@@ -1033,627 +1033,626 @@
 1025if (overallSlop < 0) overallSlop 
= 0;
 1026else if (overallSlop > 1) 
overallSlop = 1;
 1027
-1028this.tablesOnMaster = 
LoadBalancer.isTablesOnMaster(this.config);
-1029this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
-1030// If system tables on master, 
implies tablesOnMaster = true.
-1031if (this.onlySystemTablesOnMaster 
&& !this.tablesOnMaster) {
-1032  LOG.warn("Set " + TABLES_ON_MASTER 
+ "=true because " + SYSTEM_TABLES_ON_MASTER + "=true");
-1033  this.tablesOnMaster = true;
-1034}
-1035this.rackManager = new 
RackManager(getConf());
-1036if (useRegionFinder) {
-1037  regionFinder.setConf(conf);
-1038}
-1039// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
-1040LOG.info("slop=" + this.slop + ", 
tablesOnMaster=" + this.tablesOnMaster +
-1041  ", systemTablesOnMaster=" + 
this.onlySystemTablesOnMaster);
+1028this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
+1029
+1030this.rackManager = new 
RackManager(getConf());
+1031if (useRegionFinder) {
+1032  regionFinder.setConf(conf);
+1033}
+1034// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
+1035LOG.info("slop={}, 
systemTablesOnMaster={}",
+1036this.slop, 
this.onlySystemTablesOnMaster);
+1037  }
+1038
+1039  protected void setSlop(Configuration 
conf) {
+1040this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
+1041this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
 1042  }
 1043
-1044  protected void setSlop(Configuration 
conf) {
-1045this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
-1046this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
-1047  }
-1048
-1049  /**
-1050   * Check if a region belongs to some 
system table.
-1051   * If so, the primary replica may be 
expected to be put on the master regionserver.
-1052   */
-1053  public boolean 
shouldBeOnMaster(RegionInfo region) {
-1054return this.onlySystemTablesOnMaster 
&& region.getTable().isSystemTable();
-1055  }
-1056
-1057  /**
-1058   * Balance the regions that should be 
on master regionserver.
-1059   */
-1060  protected List 
balanceMasterRegions(Map> clusterMap) 
{
-1061if (masterServerName == null || 
clusterMap == null || clusterMap.size() <= 1) return null;
-1062List plans = 
null;
-1063List regions = 
clusterMap.get(masterServerName);
-1064if (regions != null) {
-1065  Iterator keyIt = 
null;
-1066  for (RegionInfo region: regions) 
{
-1067if (shouldBeOnMaster(region)) 
continue;
-1068
-1069// Find a non-master 
regionserver to host the region
-1070if (keyIt == null || 
!keyIt.hasNext()) {
-1071  keyIt = 
clusterMap.keySet().iterator();
-1072}
-1073ServerName dest = 
keyIt.next();
-1074if 
(masterServerName.equals(dest)) {
-1075  if (!keyIt.hasNext()) {
-1076keyIt = 
clusterMap.keySet().iterator();
-1077  }
-1078  dest = keyIt.next();
-1079}
-1080
-1081// Move this region away from 
the master regionserver
-1082RegionPlan plan = new 
RegionPlan(region, masterServerName, dest);
-1083if (plans == null) {
-1084  plans = new 
ArrayList<>();
-1085}
-1086plans.add(plan);
-1087  }
-1088}
-1089for (Map.Entry> server: clusterMap.entrySet()) {
-1090  if 
(masterServerName.equals(server.getKey())) continue;
-1091  for (RegionInfo region: 
server.getValue()) {
-1092if (!shouldBeOnMaster(region)) 
continue;
-1093
-1

[09/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerHolder.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerHolder.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerHolder.html
index 20e3eaa..b257d07 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerHolder.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerHolder.html
@@ -2493,1291 +2493,1293 @@
 2485  }
 2486
 2487  private boolean 
shouldRejectRequestsFromClient(HRegion region) {
-2488return 
regionServer.getReplicationSourceService().getSyncReplicationPeerInfoProvider()
-2489  
.checkState(region.getRegionInfo().getTable(), 
RejectRequestsFromClientStateChecker.get());
-2490  }
-2491
-2492  private void 
rejectIfInStandByState(HRegion region) throws DoNotRetryIOException {
-2493if 
(shouldRejectRequestsFromClient(region)) {
-2494  throw new DoNotRetryIOException(
-2495
region.getRegionInfo().getRegionNameAsString() + " is in STANDBY state.");
-2496}
-2497  }
-2498
-2499  /**
-2500   * Get data from a table.
-2501   *
-2502   * @param controller the RPC 
controller
-2503   * @param request the get request
-2504   * @throws ServiceException
-2505   */
-2506  @Override
-2507  public GetResponse get(final 
RpcController controller, final GetRequest request)
-2508  throws ServiceException {
-2509long before = 
EnvironmentEdgeManager.currentTime();
-2510OperationQuota quota = null;
-2511HRegion region = null;
-2512try {
-2513  checkOpen();
-2514  requestCount.increment();
-2515  rpcGetRequestCount.increment();
-2516  region = 
getRegion(request.getRegion());
-2517  rejectIfInStandByState(region);
-2518
-2519  GetResponse.Builder builder = 
GetResponse.newBuilder();
-2520  ClientProtos.Get get = 
request.getGet();
-2521  // An asynchbase client, 
https://github.com/OpenTSDB/asynchbase, starts by trying to do
-2522  // a get closest before. Throwing 
the UnknownProtocolException signals it that it needs
-2523  // to switch and do hbase2 
protocol (HBase servers do not tell clients what versions
-2524  // they are; its a problem for 
non-native clients like asynchbase. HBASE-20225.
-2525  if (get.hasClosestRowBefore() 
&& get.getClosestRowBefore()) {
-2526throw new 
UnknownProtocolException("Is this a pre-hbase-1.0.0 or asynchbase client? " +
-2527"Client is invoking 
getClosestRowBefore removed in hbase-2.0.0 replaced by " +
-2528"reverse Scan.");
-2529  }
-2530  Boolean existence = null;
-2531  Result r = null;
-2532  RpcCallContext context = 
RpcServer.getCurrentCall().orElse(null);
-2533  quota = 
getRpcQuotaManager().checkQuota(region, OperationQuota.OperationType.GET);
-2534
-2535  Get clientGet = 
ProtobufUtil.toGet(get);
-2536  if (get.getExistenceOnly() 
&& region.getCoprocessorHost() != null) {
-2537existence = 
region.getCoprocessorHost().preExists(clientGet);
-2538  }
-2539  if (existence == null) {
-2540if (context != null) {
-2541  r = get(clientGet, (region), 
null, context);
-2542} else {
-2543  // for test purpose
-2544  r = region.get(clientGet);
-2545}
-2546if (get.getExistenceOnly()) {
-2547  boolean exists = 
r.getExists();
-2548  if 
(region.getCoprocessorHost() != null) {
-2549exists = 
region.getCoprocessorHost().postExists(clientGet, exists);
-2550  }
-2551  existence = exists;
-2552}
-2553  }
-2554  if (existence != null) {
-2555ClientProtos.Result pbr =
-2556
ProtobufUtil.toResult(existence, region.getRegionInfo().getReplicaId() != 0);
-2557builder.setResult(pbr);
-2558  } else if (r != null) {
-2559ClientProtos.Result pbr;
-2560if 
(isClientCellBlockSupport(context) && controller instanceof 
HBaseRpcController
-2561&& 
VersionInfoUtil.hasMinimumVersion(context.getClientVersionInfo(), 1, 3)) {
-2562  pbr = 
ProtobufUtil.toResultNoData(r);
-2563  ((HBaseRpcController) 
controller).setCellScanner(CellUtil.createCellScanner(r
-2564  .rawCells()));
-2565  addSize(context, r, null);
-2566} else {
-2567  pbr = 
ProtobufUtil.toResult(r);
-2568}
-2569builder.setResult(pbr);
-2570  }
-2571  if (r != null) {
-2572quota.addGetResult(r);
-2573  }
-2574  return builder.build();
-2575} catch (IOException ie) {
-2576  throw new ServiceException(ie);
-2577} finally {
-2578  MetricsRegionServer mrs = 
regionServer.metricsRegionServer;
-2579  if (mrs !

[27/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterServices.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterServices.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterServices.html
index 340948c..237b402 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterServices.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/MasterServices.html
@@ -359,7 +359,7 @@
 351   * @return true if master is in 
maintanceMode
 352   * @throws IOException if the inquiry 
failed due to an IO problem
 353   */
-354  boolean isInMaintenanceMode() throws 
IOException;
+354  boolean isInMaintenanceMode();
 355
 356  /**
 357   * Abort a procedure.

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.FlushedSequenceIdFlusher.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.FlushedSequenceIdFlusher.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.FlushedSequenceIdFlusher.html
index c13e4a4..f1c0bc3 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.FlushedSequenceIdFlusher.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/ServerManager.FlushedSequenceIdFlusher.html
@@ -769,423 +769,426 @@
 761   * RegionServers to check-in.
 762   */
 763  private int getMinToStart() {
-764// One server should be enough to get 
us off the ground.
-765int requiredMinToStart = 1;
-766if 
(LoadBalancer.isTablesOnMaster(master.getConfiguration())) {
-767  if 
(LoadBalancer.isSystemTablesOnlyOnMaster(master.getConfiguration())) {
-768// If Master is carrying regions 
but NOT user-space regions, it
-769// still shows as a 'server'. We 
need at least one more server to check
-770// in before we can start up so 
set defaultMinToStart to 2.
-771requiredMinToStart = 
requiredMinToStart + 1;
-772  }
-773}
-774int minToStart = 
this.master.getConfiguration().getInt(WAIT_ON_REGIONSERVERS_MINTOSTART, -1);
-775// Ensure we are never less than 
requiredMinToStart else stuff won't work.
-776return minToStart == -1 || minToStart 
< requiredMinToStart? requiredMinToStart: minToStart;
-777  }
-778
-779  /**
-780   * Wait for the region servers to 
report in.
-781   * We will wait until one of this 
condition is met:
-782   *  - the master is stopped
-783   *  - the 
'hbase.master.wait.on.regionservers.maxtostart' number of
-784   *region servers is reached
-785   *  - the 
'hbase.master.wait.on.regionservers.mintostart' is reached AND
-786   *   there have been no new region 
server in for
-787   *  
'hbase.master.wait.on.regionservers.interval' time AND
-788   *   the 
'hbase.master.wait.on.regionservers.timeout' is reached
-789   *
-790   * @throws InterruptedException
-791   */
-792  public void 
waitForRegionServers(MonitoredTask status) throws InterruptedException {
-793final long interval = 
this.master.getConfiguration().
-794
getLong(WAIT_ON_REGIONSERVERS_INTERVAL, 1500);
-795final long timeout = 
this.master.getConfiguration().
-796
getLong(WAIT_ON_REGIONSERVERS_TIMEOUT, 4500);
-797// Min is not an absolute; just a 
friction making us wait longer on server checkin.
-798int minToStart = getMinToStart();
-799int maxToStart = 
this.master.getConfiguration().
-800
getInt(WAIT_ON_REGIONSERVERS_MAXTOSTART, Integer.MAX_VALUE);
-801if (maxToStart < minToStart) {
-802  LOG.warn(String.format("The value 
of '%s' (%d) is set less than '%s' (%d), ignoring.",
-803  
WAIT_ON_REGIONSERVERS_MAXTOSTART, maxToStart,
-804  
WAIT_ON_REGIONSERVERS_MINTOSTART, minToStart));
-805  maxToStart = Integer.MAX_VALUE;
-806}
-807
-808long now =  
System.currentTimeMillis();
-809final long startTime = now;
-810long slept = 0;
-811long lastLogTime = 0;
-812long lastCountChange = startTime;
-813int count = countOfRegionServers();
-814int oldCount = 0;
-815// This while test is a little hard 
to read. We try to comment it in below but in essence:
-816// Wait if Master is not stopped and 
the number of regionservers that have checked-in is
-817// less than the maxToStart. Both of 
these conditions will be true near universally.
-818// Next, we will keep cycling if ANY 
of the following three conditions are true:
-819// 1. The time since a regionserver 
registered is < interval (means servers are actively checking in).
-820// 2. We are under the total 
timeout.
-821// 3. The count of servers is < 
minimum.
-822for (ServerListener listener: 
this.listeners) {
-823  listener.waiting();
-824}
-825while (!this.master.isStopped()

[02/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/testdevapidocs/org/apache/hadoop/hbase/master/class-use/TestMasterRepairMode.html
--
diff --git 
a/testdevapidocs/org/apache/hadoop/hbase/master/class-use/TestMasterRepairMode.html
 
b/testdevapidocs/org/apache/hadoop/hbase/master/class-use/TestMasterRepairMode.html
new file mode 100644
index 000..bb95426
--- /dev/null
+++ 
b/testdevapidocs/org/apache/hadoop/hbase/master/class-use/TestMasterRepairMode.html
@@ -0,0 +1,125 @@
+http://www.w3.org/TR/html4/loose.dtd";>
+
+
+
+
+
+Uses of Class org.apache.hadoop.hbase.master.TestMasterRepairMode 
(Apache HBase 3.0.0-SNAPSHOT Test API)
+
+
+
+
+
+
+
+JavaScript is disabled on your browser.
+
+
+
+
+
+Skip navigation links
+
+
+
+
+Overview
+Package
+Class
+Use
+Tree
+Deprecated
+Index
+Help
+
+
+
+
+Prev
+Next
+
+
+Frames
+No Frames
+
+
+All Classes
+
+
+
+
+
+
+
+
+
+
+Uses of 
Classorg.apache.hadoop.hbase.master.TestMasterRepairMode
+
+No usage of 
org.apache.hadoop.hbase.master.TestMasterRepairMode
+
+
+
+
+Skip navigation links
+
+
+
+
+Overview
+Package
+Class
+Use
+Tree
+Deprecated
+Index
+Help
+
+
+
+
+Prev
+Next
+
+
+Frames
+No Frames
+
+
+All Classes
+
+
+
+
+
+
+
+
+
+Copyright © 2007–2018 https://www.apache.org/";>The Apache Software Foundation. All rights 
reserved.
+
+

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/testdevapidocs/org/apache/hadoop/hbase/master/package-frame.html
--
diff --git a/testdevapidocs/org/apache/hadoop/hbase/master/package-frame.html 
b/testdevapidocs/org/apache/hadoop/hbase/master/package-frame.html
index 34c..437b713 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/master/package-frame.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/master/package-frame.html
@@ -58,6 +58,7 @@
 TestMasterNoCluster
 TestMasterOperationsForRegionReplicas
 TestMasterQosFunction
+TestMasterRepairMode
 TestMasterRestartAfterDisablingTable
 TestMasterShutdown
 TestMasterStatusServlet

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/testdevapidocs/org/apache/hadoop/hbase/master/package-summary.html
--
diff --git a/testdevapidocs/org/apache/hadoop/hbase/master/package-summary.html 
b/testdevapidocs/org/apache/hadoop/hbase/master/package-summary.html
index f1f4d8f..ee288d0 100644
--- a/testdevapidocs/org/apache/hadoop/hbase/master/package-summary.html
+++ b/testdevapidocs/org/apache/hadoop/hbase/master/package-summary.html
@@ -283,135 +283,139 @@
  
 
 
-TestMasterRestartAfterDisablingTable
+TestMasterRepairMode
  
 
 
-TestMasterShutdown
+TestMasterRestartAfterDisablingTable
  
 
 
+TestMasterShutdown
+ 
+
+
 TestMasterStatusServlet
 
 Tests for the master status page and its template.
 
 
-
+
 TestMasterTransitions
 
 Test transitions of state across the master.
 
 
-
+
 TestMergeTableRegionsWhileRSCrash
  
 
-
+
 TestMetaAssignmentWithStopMaster
  
 
-
+
 TestMetaShutdownHandler
 
 Tests handling of meta-carrying region server 
failover.
 
 
-
+
 TestMetaShutdownHandler.MyRegionServer
  
 
-
+
 TestMetricsMasterProcSourceImpl
 
 Test for MetricsMasterProcSourceImpl
 
 
-
+
 TestMetricsMasterSourceFactory
 
 Test for the CompatibilitySingletonFactory and building 
MetricsMasterSource
 
 
-
+
 TestMetricsMasterSourceImpl
 
 Test for MetricsMasterSourceImpl
 
 
-
+
 TestMirroringTableStateManager
 
 Tests that table state is mirrored out to zookeeper for 
hbase-1.x clients.
 
 
-
+
 TestRegionPlacement
  
 
-
+
 TestRegionPlacement2
  
 
-
+
 TestRegionPlan
  
 
-
+
 TestRegionState
  
 
-
+
 TestRestartCluster
  
 
-
+
 TestRollingRestart
 
 Tests the restarting of everything as done during rolling 
restarts.
 
 
-
+
 TestServerCrashProcedureCarryingMetaStuck
  
 
-
+
 TestServerCrashProcedureStuck
 
 Testcase for HBASE-20634
 
 
-
+
 TestShutdownBackupMaster
 
 Test to confirm that we will not hang when stop a backup 
master which is trying to become the
  active master.
 
 
-
+
 TestShutdownBackupMaster.MockHMaster
  
 
-
+
 TestShutdownWithNoRegionServer
 
 Testcase to confirm that we will not hang when shutdown a 
cluster with no live region serve

[16/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
index 90087b4..b2a9771 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.CompactionChecker.html
@@ -956,2857 +956,2858 @@
 948  // Try and register with the 
Master; tell it we are here.  Break if server is stopped or the
 949  // clusterup flag is down or hdfs 
went wacky. Once registered successfully, go ahead and start
 950  // up all Services. Use 
RetryCounter to get backoff in case Master is struggling to come up.
-951  RetryCounterFactory rcf = new 
RetryCounterFactory(Integer.MAX_VALUE,
-952  this.sleeper.getPeriod(), 1000 
* 60 * 5);
-953  RetryCounter rc = rcf.create();
-954  while (keepLooping()) {
-955RegionServerStartupResponse w = 
reportForDuty();
-956if (w == null) {
-957  long sleepTime = 
rc.getBackoffTimeAndIncrementAttempts();
-958  LOG.warn("reportForDuty failed; 
sleeping {} ms and then retrying.", sleepTime);
-959  
this.sleeper.sleep(sleepTime);
-960} else {
-961  
handleReportForDutyResponse(w);
-962  break;
-963}
-964  }
-965
-966  if (!isStopped() && 
isHealthy()) {
-967// start the snapshot handler and 
other procedure handlers,
-968// since the server is ready to 
run
-969if (this.rspmHost != null) {
-970  this.rspmHost.start();
-971}
-972// Start the Quota Manager
-973if (this.rsQuotaManager != null) 
{
-974  
rsQuotaManager.start(getRpcServer().getScheduler());
-975}
-976if (this.rsSpaceQuotaManager != 
null) {
-977  
this.rsSpaceQuotaManager.start();
-978}
-979  }
-980
-981  // We registered with the Master.  
Go into run mode.
-982  long lastMsg = 
System.currentTimeMillis();
-983  long oldRequestCount = -1;
-984  // The main run loop.
-985  while (!isStopped() && 
isHealthy()) {
-986if (!isClusterUp()) {
-987  if (isOnlineRegionsEmpty()) {
-988stop("Exiting; cluster 
shutdown set and not carrying any regions");
-989  } else if (!this.stopping) {
-990this.stopping = true;
-991LOG.info("Closing user 
regions");
-992
closeUserRegions(this.abortRequested);
-993  } else if (this.stopping) {
-994boolean allUserRegionsOffline 
= areAllUserRegionsOffline();
-995if (allUserRegionsOffline) 
{
-996  // Set stopped if no more 
write requests tp meta tables
-997  // since last time we went 
around the loop.  Any open
-998  // meta regions will be 
closed on our way out.
-999  if (oldRequestCount == 
getWriteRequestCount()) {
-1000stop("Stopped; only 
catalog regions remaining online");
-1001break;
-1002  }
-1003  oldRequestCount = 
getWriteRequestCount();
-1004} else {
-1005  // Make sure all regions 
have been closed -- some regions may
-1006  // have not got it because 
we were splitting at the time of
-1007  // the call to 
closeUserRegions.
-1008  
closeUserRegions(this.abortRequested);
-1009}
-1010LOG.debug("Waiting on " + 
getOnlineRegionsAsPrintableString());
-1011  }
-1012}
-1013long now = 
System.currentTimeMillis();
-1014if ((now - lastMsg) >= 
msgInterval) {
-1015  tryRegionServerReport(lastMsg, 
now);
-1016  lastMsg = 
System.currentTimeMillis();
-1017}
-1018if (!isStopped() && 
!isAborted()) {
-1019  this.sleeper.sleep();
-1020}
-1021  } // for
-1022} catch (Throwable t) {
-1023  if (!rpcServices.checkOOME(t)) {
-1024String prefix = t instanceof 
YouAreDeadException? "": "Unhandled: ";
-1025abort(prefix + t.getMessage(), 
t);
-1026  }
-1027}
-1028if (this.leases != null) {
-1029  
this.leases.closeAfterLeasesExpire();
-1030}
-1031if (this.splitLogWorker != null) {
-1032  splitLogWorker.stop();
-1033}
-1034if (this.infoServer != null) {
-1035  LOG.info("Stopping infoServer");
-1036  try {
-1037this.infoServer.stop();
-1038  } catch (Exception e) {
-1039LOG.error("Failed to stop 
infoServer", e);
-1040  }
-1041}
-1042// Send cache a shutdown.
-1043if (cacheConfig != null && 
cacheConfig.isBlockCacheEnabled()) {
-1044

[36/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/regionserver/RSRpcServices.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/regionserver/RSRpcServices.html 
b/devapidocs/org/apache/hadoop/hbase/regionserver/RSRpcServices.html
index 23b1976..9207d2b 100644
--- a/devapidocs/org/apache/hadoop/hbase/regionserver/RSRpcServices.html
+++ b/devapidocs/org/apache/hadoop/hbase/regionserver/RSRpcServices.html
@@ -1347,7 +1347,7 @@ implements 
 SCANNER_ALREADY_CLOSED
 https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true";
 title="class or interface in java.lang">@Deprecated
-private static final https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException SCANNER_ALREADY_CLOSED
+private static final https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true";
 title="class or interface in java.io">IOException SCANNER_ALREADY_CLOSED
 Deprecated. 
 
 
@@ -2565,7 +2565,7 @@ private static final https://docs.oracle.com/javase/8/docs/api/jav
 
 
 rejectIfInStandByState
-private void rejectIfInStandByState(HRegion region)
+private void rejectIfInStandByState(HRegion region)
  throws DoNotRetryIOException
 
 Throws:
@@ -2579,7 +2579,7 @@ private static final https://docs.oracle.com/javase/8/docs/api/jav
 
 
 get
-public org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.GetResponse get(org.apache.hbase.thirdparty.com.google.protobuf.RpcController controller,
+public org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.GetResponse get(org.apache.hbase.thirdparty.com.google.protobuf.RpcController controller,

   
org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.GetRequest request)

throws org.apache.hbase.thirdparty.com.google.protobuf.ServiceException
 Get data from a table.
@@ -2600,7 +2600,7 @@ private static final https://docs.oracle.com/javase/8/docs/api/jav
 
 
 get
-private Result get(Get get,
+private Result get(Get get,
HRegion region,
RSRpcServices.RegionScannersCloseCallBack closeCallBack,
RpcCallContext context)
@@ -2617,7 +2617,7 @@ private static final https://docs.oracle.com/javase/8/docs/api/jav
 
 
 checkBatchSizeAndLogLargeSize
-private void checkBatchSizeAndLogLargeSize(org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.MultiRequest request)
+private void checkBatchSizeAndLogLargeSize(org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.MultiRequest request)
 
 
 
@@ -2626,7 +2626,7 @@ private static final https://docs.oracle.com/javase/8/docs/api/jav
 
 
 failRegionAction
-private void failRegionAction(org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.MultiResponse.Builder responseBuilder,
+private void failRegionAction(org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.MultiResponse.Builder responseBuilder,
   
org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.RegionActionResult.Builder regionActionResultBuilder,
   
org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.RegionAction regionAction,
   CellScanner cellScanner,
@@ -2639,7 +2639,7 @@ private static final https://docs.oracle.com/javase/8/docs/api/jav
 
 
 isReplicationRequest
-private boolean isReplicationRequest(org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.Action action)
+private boolean isReplicationRequest(org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.Action action)
 
 
 
@@ -2648,7 +2648,7 @@ private static final https://docs.oracle.com/javase/8/docs/api/jav
 
 
 multi
-public org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.MultiResponse multi(org.apache.hbase.thirdparty.com.google.protobuf.RpcController rpcc,
+public org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.MultiResponse multi(org.apache.hbase.thirdparty.com.google.protobuf.RpcController rpcc,

   
org.apache.hadoop.hbase.shaded.protobuf.generated.ClientProtos.MultiRequest request)

throws 
org.apache.hbase.thirdparty.com.google.protobuf.ServiceException
 Execute multiple actions on a table: get, mutate, and/or 
execCoprocessor
@@ -2669,7 +2669,7 @@ private static final https://docs.oracle.com/javase/8/docs/api/jav
 
 
 skipCellsForMutations
-private void skipCellsForMutations(https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true";
 title="

[24/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.html
index c307d41..d82bfd8 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.html
@@ -1020,8 +1020,8 @@
 1012  protected ClusterMetrics clusterStatus 
= null;
 1013  protected ServerName 
masterServerName;
 1014  protected MasterServices services;
-1015  protected boolean tablesOnMaster;
-1016  protected boolean 
onlySystemTablesOnMaster;
+1015  protected boolean 
onlySystemTablesOnMaster;
+1016  protected boolean maintenanceMode;
 1017
 1018  @Override
 1019  public void setConf(Configuration 
conf) {
@@ -1033,627 +1033,626 @@
 1025if (overallSlop < 0) overallSlop 
= 0;
 1026else if (overallSlop > 1) 
overallSlop = 1;
 1027
-1028this.tablesOnMaster = 
LoadBalancer.isTablesOnMaster(this.config);
-1029this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
-1030// If system tables on master, 
implies tablesOnMaster = true.
-1031if (this.onlySystemTablesOnMaster 
&& !this.tablesOnMaster) {
-1032  LOG.warn("Set " + TABLES_ON_MASTER 
+ "=true because " + SYSTEM_TABLES_ON_MASTER + "=true");
-1033  this.tablesOnMaster = true;
-1034}
-1035this.rackManager = new 
RackManager(getConf());
-1036if (useRegionFinder) {
-1037  regionFinder.setConf(conf);
-1038}
-1039// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
-1040LOG.info("slop=" + this.slop + ", 
tablesOnMaster=" + this.tablesOnMaster +
-1041  ", systemTablesOnMaster=" + 
this.onlySystemTablesOnMaster);
+1028this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
+1029
+1030this.rackManager = new 
RackManager(getConf());
+1031if (useRegionFinder) {
+1032  regionFinder.setConf(conf);
+1033}
+1034// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
+1035LOG.info("slop={}, 
systemTablesOnMaster={}",
+1036this.slop, 
this.onlySystemTablesOnMaster);
+1037  }
+1038
+1039  protected void setSlop(Configuration 
conf) {
+1040this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
+1041this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
 1042  }
 1043
-1044  protected void setSlop(Configuration 
conf) {
-1045this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
-1046this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
-1047  }
-1048
-1049  /**
-1050   * Check if a region belongs to some 
system table.
-1051   * If so, the primary replica may be 
expected to be put on the master regionserver.
-1052   */
-1053  public boolean 
shouldBeOnMaster(RegionInfo region) {
-1054return this.onlySystemTablesOnMaster 
&& region.getTable().isSystemTable();
-1055  }
-1056
-1057  /**
-1058   * Balance the regions that should be 
on master regionserver.
-1059   */
-1060  protected List 
balanceMasterRegions(Map> clusterMap) 
{
-1061if (masterServerName == null || 
clusterMap == null || clusterMap.size() <= 1) return null;
-1062List plans = 
null;
-1063List regions = 
clusterMap.get(masterServerName);
-1064if (regions != null) {
-1065  Iterator keyIt = 
null;
-1066  for (RegionInfo region: regions) 
{
-1067if (shouldBeOnMaster(region)) 
continue;
-1068
-1069// Find a non-master 
regionserver to host the region
-1070if (keyIt == null || 
!keyIt.hasNext()) {
-1071  keyIt = 
clusterMap.keySet().iterator();
-1072}
-1073ServerName dest = 
keyIt.next();
-1074if 
(masterServerName.equals(dest)) {
-1075  if (!keyIt.hasNext()) {
-1076keyIt = 
clusterMap.keySet().iterator();
-1077  }
-1078  dest = keyIt.next();
-1079}
-1080
-1081// Move this region away from 
the master regionserver
-1082RegionPlan plan = new 
RegionPlan(region, masterServerName, dest);
-1083if (plans == null) {
-1084  plans = new 
ArrayList<>();
-1085}
-1086plans.add(plan);
-1087  }
-1088}
-1089for (Map.Entry> server: clusterMap.entrySet()) {
-1090  if 
(masterServerName.equals(server.getKey())) continue;
-1091  for (RegionInfo region: 
server.getValue()) {
-1092if (!shouldBeOnMaster(region)) 
continue;
-1093
-1094// Move t

[40/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/master/MasterRpcServices.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/master/MasterRpcServices.html 
b/devapidocs/org/apache/hadoop/hbase/master/MasterRpcServices.html
index 9ff68ad..3ff4ce2 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/MasterRpcServices.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/MasterRpcServices.html
@@ -2021,7 +2021,7 @@ implements 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.Master
 
 
 unassignRegion
-public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.UnassignRegionResponse unassignRegion(org.apache.hbase.thirdparty.com.google.protobuf.RpcController controller,
+public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.UnassignRegionResponse unassignRegion(org.apache.hbase.thirdparty.com.google.protobuf.RpcController controller,

 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.UnassignRegionRequest req)

  throws 
org.apache.hbase.thirdparty.com.google.protobuf.ServiceException
 
@@ -2038,7 +2038,7 @@ implements 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.Master
 
 
 reportRegionStateTransition
-public org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.ReportRegionStateTransitionResponse reportRegionStateTransition(org.apache.hbase.thirdparty.com.google.protobuf.RpcController c,
+public org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.ReportRegionStateTransitionResponse reportRegionStateTransition(org.apache.hbase.thirdparty.com.google.protobuf.RpcController c,

   
org.apache.hadoop.hbase.shaded.protobuf.generated.RegionServerStatusProtos.ReportRegionStateTransitionRequest req)

throws 
org.apache.hbase.thirdparty.com.google.protobuf.ServiceException
 
@@ -2055,7 +2055,7 @@ implements 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.Master
 
 
 setQuota
-public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.SetQuotaResponse setQuota(org.apache.hbase.thirdparty.com.google.protobuf.RpcController c,
+public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.SetQuotaResponse setQuota(org.apache.hbase.thirdparty.com.google.protobuf.RpcController c,

 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.SetQuotaRequest req)

  throws 
org.apache.hbase.thirdparty.com.google.protobuf.ServiceException
 
@@ -2072,7 +2072,7 @@ implements 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.Master
 
 
 getLastMajorCompactionTimestamp
-public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MajorCompactionTimestampResponse getLastMajorCompactionTimestamp(org.apache.hbase.thirdparty.com.google.protobuf.RpcController controller,
+public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MajorCompactionTimestampResponse getLastMajorCompactionTimestamp(org.apache.hbase.thirdparty.com.google.protobuf.RpcController controller,


org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MajorCompactionTimestampRequest request)

 throws 
org.apache.hbase.thirdparty.com.google.protobuf.ServiceException
 
@@ -2089,7 +2089,7 @@ implements 
org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.Master
 
 
 getLastMajorCompactionTimestampForRegion
-public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MajorCompactionTimestampResponse getLastMajorCompactionTimestampForRegion(org.apache.hbase.thirdparty.com.google.protobuf.RpcController controller,
+public org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos.MajorCompactionTimestampResponse getLastMajorCompactionTimestampForRegion(org.apache.hbase.thirdparty.com.google.protobuf.RpcController controller,

 
org.apache.hadoop.hbase.shaded.protob

[39/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html
--
diff --git 
a/devapidocs/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html 
b/devapidocs/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html
index a3e902f..4466185 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.html
@@ -190,53 +190,53 @@ implements LOG 
 
 
+protected boolean
+maintenanceMode 
+
+
 protected ServerName
 masterServerName 
 
-
+
 protected MetricsBalancer
 metricsBalancer 
 
-
+
 protected static int
 MIN_SERVER_BALANCE 
 
-
+
 protected boolean
 onlySystemTablesOnMaster 
 
-
+
 protected float
 overallSlop 
 
-
+
 protected RackManager
 rackManager 
 
-
+
 private static https://docs.oracle.com/javase/8/docs/api/java/util/Random.html?is-external=true";
 title="class or interface in java.util">Random
 RANDOM 
 
-
+
 protected RegionLocationFinder
 regionFinder 
 
-
+
 protected MasterServices
 services 
 
-
+
 protected float
 slop 
 
-
+
 private boolean
 stopped 
 
-
-protected boolean
-tablesOnMaster 
-
 
 protected boolean
 useRegionFinder 
@@ -478,7 +478,7 @@ implements LoadBalancer
-balanceCluster,
 balanceCluster,
 isSystemTablesOnlyOnMaster,
 isTablesOnMaster
+balanceCluster,
 balanceCluster,
 isMasterCanHostUserRegions,
 isSystemTablesOnlyOnMaster,
 isTablesOnMaster
 
 
 
@@ -642,22 +642,22 @@ implements MasterServices services
 
 
-
+
 
 
 
 
-tablesOnMaster
-protected boolean tablesOnMaster
+onlySystemTablesOnMaster
+protected boolean onlySystemTablesOnMaster
 
 
-
+
 
 
 
 
-onlySystemTablesOnMaster
-protected boolean onlySystemTablesOnMaster
+maintenanceMode
+protected boolean maintenanceMode
 
 
 
@@ -725,7 +725,7 @@ implements 
 
 setSlop
-protected void setSlop(org.apache.hadoop.conf.Configuration conf)
+protected void setSlop(org.apache.hadoop.conf.Configuration conf)
 
 
 
@@ -734,7 +734,7 @@ implements 
 
 shouldBeOnMaster
-public boolean shouldBeOnMaster(RegionInfo region)
+public boolean shouldBeOnMaster(RegionInfo region)
 Check if a region belongs to some system table.
  If so, the primary replica may be expected to be put on the master 
regionserver.
 
@@ -745,7 +745,7 @@ implements 
 
 balanceMasterRegions
-protected https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true";
 title="class or interface in java.util">List balanceMasterRegions(https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">MapList>&n
 bsp;clusterMap)
+protected https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true";
 title="class or interface in java.util">List balanceMasterRegions(https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">MapList>&n
 bsp;clusterMap)
 Balance the regions that should be on master 
regionserver.
 
 
@@ -755,7 +755,7 @@ implements 
 
 assignMasterSystemRegions
-protected https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">MapList> assignMasterSystemRegions(https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true";
 title="class or interface in java.util">Collection regions,
+protected https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">MapList> assignMasterSystemRegions(https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true";
 title="class or interface in java.util">Collection regions,
  https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true";
 title="class or interface in java.util">List servers)
 If master is configured to carry system tables only, in 
here is
  where we figure what to assign it.
@@ -767,7 +767,7 @@ implements 
 
 getConf
-public org.apache.hadoop.conf.Configuration getConf()
+public org.apache.hadoop.conf.Configuration getConf()
 
 Specified by:
 getConf in 
interface org.apache.hadoop.conf.Configurable
@@ -780,7 +780,7 @@ 

[22/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.LocalityType.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.LocalityType.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.LocalityType.html
index c307d41..d82bfd8 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.LocalityType.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.LocalityType.html
@@ -1020,8 +1020,8 @@
 1012  protected ClusterMetrics clusterStatus 
= null;
 1013  protected ServerName 
masterServerName;
 1014  protected MasterServices services;
-1015  protected boolean tablesOnMaster;
-1016  protected boolean 
onlySystemTablesOnMaster;
+1015  protected boolean 
onlySystemTablesOnMaster;
+1016  protected boolean maintenanceMode;
 1017
 1018  @Override
 1019  public void setConf(Configuration 
conf) {
@@ -1033,627 +1033,626 @@
 1025if (overallSlop < 0) overallSlop 
= 0;
 1026else if (overallSlop > 1) 
overallSlop = 1;
 1027
-1028this.tablesOnMaster = 
LoadBalancer.isTablesOnMaster(this.config);
-1029this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
-1030// If system tables on master, 
implies tablesOnMaster = true.
-1031if (this.onlySystemTablesOnMaster 
&& !this.tablesOnMaster) {
-1032  LOG.warn("Set " + TABLES_ON_MASTER 
+ "=true because " + SYSTEM_TABLES_ON_MASTER + "=true");
-1033  this.tablesOnMaster = true;
-1034}
-1035this.rackManager = new 
RackManager(getConf());
-1036if (useRegionFinder) {
-1037  regionFinder.setConf(conf);
-1038}
-1039// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
-1040LOG.info("slop=" + this.slop + ", 
tablesOnMaster=" + this.tablesOnMaster +
-1041  ", systemTablesOnMaster=" + 
this.onlySystemTablesOnMaster);
+1028this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
+1029
+1030this.rackManager = new 
RackManager(getConf());
+1031if (useRegionFinder) {
+1032  regionFinder.setConf(conf);
+1033}
+1034// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
+1035LOG.info("slop={}, 
systemTablesOnMaster={}",
+1036this.slop, 
this.onlySystemTablesOnMaster);
+1037  }
+1038
+1039  protected void setSlop(Configuration 
conf) {
+1040this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
+1041this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
 1042  }
 1043
-1044  protected void setSlop(Configuration 
conf) {
-1045this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
-1046this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
-1047  }
-1048
-1049  /**
-1050   * Check if a region belongs to some 
system table.
-1051   * If so, the primary replica may be 
expected to be put on the master regionserver.
-1052   */
-1053  public boolean 
shouldBeOnMaster(RegionInfo region) {
-1054return this.onlySystemTablesOnMaster 
&& region.getTable().isSystemTable();
-1055  }
-1056
-1057  /**
-1058   * Balance the regions that should be 
on master regionserver.
-1059   */
-1060  protected List 
balanceMasterRegions(Map> clusterMap) 
{
-1061if (masterServerName == null || 
clusterMap == null || clusterMap.size() <= 1) return null;
-1062List plans = 
null;
-1063List regions = 
clusterMap.get(masterServerName);
-1064if (regions != null) {
-1065  Iterator keyIt = 
null;
-1066  for (RegionInfo region: regions) 
{
-1067if (shouldBeOnMaster(region)) 
continue;
-1068
-1069// Find a non-master 
regionserver to host the region
-1070if (keyIt == null || 
!keyIt.hasNext()) {
-1071  keyIt = 
clusterMap.keySet().iterator();
-1072}
-1073ServerName dest = 
keyIt.next();
-1074if 
(masterServerName.equals(dest)) {
-1075  if (!keyIt.hasNext()) {
-1076keyIt = 
clusterMap.keySet().iterator();
-1077  }
-1078  dest = keyIt.next();
-1079}
-1080
-1081// Move this region away from 
the master regionserver
-1082RegionPlan plan = new 
RegionPlan(region, masterServerName, dest);
-1083if (plans == null) {
-1084  plans = new 
ArrayList<>();
-1085}
-1086plans.add(plan);
-1087  }
-1088}
-1089for (Map.Entry> server: clusterMap.entrySet()) {
-1090  if 
(masterServerName.equals(server.getKey())) continue;
-1091  for (RegionInfo region: 
server.getValue()) {
-1092if (!shouldBeOnMaster(region)) 
continue

[13/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.PeriodicMemStoreFlusher.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.PeriodicMemStoreFlusher.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.PeriodicMemStoreFlusher.html
index 90087b4..b2a9771 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.PeriodicMemStoreFlusher.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.PeriodicMemStoreFlusher.html
@@ -956,2857 +956,2858 @@
 948  // Try and register with the 
Master; tell it we are here.  Break if server is stopped or the
 949  // clusterup flag is down or hdfs 
went wacky. Once registered successfully, go ahead and start
 950  // up all Services. Use 
RetryCounter to get backoff in case Master is struggling to come up.
-951  RetryCounterFactory rcf = new 
RetryCounterFactory(Integer.MAX_VALUE,
-952  this.sleeper.getPeriod(), 1000 
* 60 * 5);
-953  RetryCounter rc = rcf.create();
-954  while (keepLooping()) {
-955RegionServerStartupResponse w = 
reportForDuty();
-956if (w == null) {
-957  long sleepTime = 
rc.getBackoffTimeAndIncrementAttempts();
-958  LOG.warn("reportForDuty failed; 
sleeping {} ms and then retrying.", sleepTime);
-959  
this.sleeper.sleep(sleepTime);
-960} else {
-961  
handleReportForDutyResponse(w);
-962  break;
-963}
-964  }
-965
-966  if (!isStopped() && 
isHealthy()) {
-967// start the snapshot handler and 
other procedure handlers,
-968// since the server is ready to 
run
-969if (this.rspmHost != null) {
-970  this.rspmHost.start();
-971}
-972// Start the Quota Manager
-973if (this.rsQuotaManager != null) 
{
-974  
rsQuotaManager.start(getRpcServer().getScheduler());
-975}
-976if (this.rsSpaceQuotaManager != 
null) {
-977  
this.rsSpaceQuotaManager.start();
-978}
-979  }
-980
-981  // We registered with the Master.  
Go into run mode.
-982  long lastMsg = 
System.currentTimeMillis();
-983  long oldRequestCount = -1;
-984  // The main run loop.
-985  while (!isStopped() && 
isHealthy()) {
-986if (!isClusterUp()) {
-987  if (isOnlineRegionsEmpty()) {
-988stop("Exiting; cluster 
shutdown set and not carrying any regions");
-989  } else if (!this.stopping) {
-990this.stopping = true;
-991LOG.info("Closing user 
regions");
-992
closeUserRegions(this.abortRequested);
-993  } else if (this.stopping) {
-994boolean allUserRegionsOffline 
= areAllUserRegionsOffline();
-995if (allUserRegionsOffline) 
{
-996  // Set stopped if no more 
write requests tp meta tables
-997  // since last time we went 
around the loop.  Any open
-998  // meta regions will be 
closed on our way out.
-999  if (oldRequestCount == 
getWriteRequestCount()) {
-1000stop("Stopped; only 
catalog regions remaining online");
-1001break;
-1002  }
-1003  oldRequestCount = 
getWriteRequestCount();
-1004} else {
-1005  // Make sure all regions 
have been closed -- some regions may
-1006  // have not got it because 
we were splitting at the time of
-1007  // the call to 
closeUserRegions.
-1008  
closeUserRegions(this.abortRequested);
-1009}
-1010LOG.debug("Waiting on " + 
getOnlineRegionsAsPrintableString());
-1011  }
-1012}
-1013long now = 
System.currentTimeMillis();
-1014if ((now - lastMsg) >= 
msgInterval) {
-1015  tryRegionServerReport(lastMsg, 
now);
-1016  lastMsg = 
System.currentTimeMillis();
-1017}
-1018if (!isStopped() && 
!isAborted()) {
-1019  this.sleeper.sleep();
-1020}
-1021  } // for
-1022} catch (Throwable t) {
-1023  if (!rpcServices.checkOOME(t)) {
-1024String prefix = t instanceof 
YouAreDeadException? "": "Unhandled: ";
-1025abort(prefix + t.getMessage(), 
t);
-1026  }
-1027}
-1028if (this.leases != null) {
-1029  
this.leases.closeAfterLeasesExpire();
-1030}
-1031if (this.splitLogWorker != null) {
-1032  splitLogWorker.stop();
-1033}
-1034if (this.infoServer != null) {
-1035  LOG.info("Stopping infoServer");
-1036  try {
-1037this.infoServer.stop();
-1038  } catch (Exception e) {
-1039LOG.error("Failed to stop 
infoServer", e);
-1040  }
-1041}
-1042// Send cache a shutdown.
-1043if (cacheConfig != null && 
cacheConfig.

[06/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.ScannerListener.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.ScannerListener.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.ScannerListener.html
index 20e3eaa..b257d07 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.ScannerListener.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.ScannerListener.html
@@ -2493,1291 +2493,1293 @@
 2485  }
 2486
 2487  private boolean 
shouldRejectRequestsFromClient(HRegion region) {
-2488return 
regionServer.getReplicationSourceService().getSyncReplicationPeerInfoProvider()
-2489  
.checkState(region.getRegionInfo().getTable(), 
RejectRequestsFromClientStateChecker.get());
-2490  }
-2491
-2492  private void 
rejectIfInStandByState(HRegion region) throws DoNotRetryIOException {
-2493if 
(shouldRejectRequestsFromClient(region)) {
-2494  throw new DoNotRetryIOException(
-2495
region.getRegionInfo().getRegionNameAsString() + " is in STANDBY state.");
-2496}
-2497  }
-2498
-2499  /**
-2500   * Get data from a table.
-2501   *
-2502   * @param controller the RPC 
controller
-2503   * @param request the get request
-2504   * @throws ServiceException
-2505   */
-2506  @Override
-2507  public GetResponse get(final 
RpcController controller, final GetRequest request)
-2508  throws ServiceException {
-2509long before = 
EnvironmentEdgeManager.currentTime();
-2510OperationQuota quota = null;
-2511HRegion region = null;
-2512try {
-2513  checkOpen();
-2514  requestCount.increment();
-2515  rpcGetRequestCount.increment();
-2516  region = 
getRegion(request.getRegion());
-2517  rejectIfInStandByState(region);
-2518
-2519  GetResponse.Builder builder = 
GetResponse.newBuilder();
-2520  ClientProtos.Get get = 
request.getGet();
-2521  // An asynchbase client, 
https://github.com/OpenTSDB/asynchbase, starts by trying to do
-2522  // a get closest before. Throwing 
the UnknownProtocolException signals it that it needs
-2523  // to switch and do hbase2 
protocol (HBase servers do not tell clients what versions
-2524  // they are; its a problem for 
non-native clients like asynchbase. HBASE-20225.
-2525  if (get.hasClosestRowBefore() 
&& get.getClosestRowBefore()) {
-2526throw new 
UnknownProtocolException("Is this a pre-hbase-1.0.0 or asynchbase client? " +
-2527"Client is invoking 
getClosestRowBefore removed in hbase-2.0.0 replaced by " +
-2528"reverse Scan.");
-2529  }
-2530  Boolean existence = null;
-2531  Result r = null;
-2532  RpcCallContext context = 
RpcServer.getCurrentCall().orElse(null);
-2533  quota = 
getRpcQuotaManager().checkQuota(region, OperationQuota.OperationType.GET);
-2534
-2535  Get clientGet = 
ProtobufUtil.toGet(get);
-2536  if (get.getExistenceOnly() 
&& region.getCoprocessorHost() != null) {
-2537existence = 
region.getCoprocessorHost().preExists(clientGet);
-2538  }
-2539  if (existence == null) {
-2540if (context != null) {
-2541  r = get(clientGet, (region), 
null, context);
-2542} else {
-2543  // for test purpose
-2544  r = region.get(clientGet);
-2545}
-2546if (get.getExistenceOnly()) {
-2547  boolean exists = 
r.getExists();
-2548  if 
(region.getCoprocessorHost() != null) {
-2549exists = 
region.getCoprocessorHost().postExists(clientGet, exists);
-2550  }
-2551  existence = exists;
-2552}
-2553  }
-2554  if (existence != null) {
-2555ClientProtos.Result pbr =
-2556
ProtobufUtil.toResult(existence, region.getRegionInfo().getReplicaId() != 0);
-2557builder.setResult(pbr);
-2558  } else if (r != null) {
-2559ClientProtos.Result pbr;
-2560if 
(isClientCellBlockSupport(context) && controller instanceof 
HBaseRpcController
-2561&& 
VersionInfoUtil.hasMinimumVersion(context.getClientVersionInfo(), 1, 3)) {
-2562  pbr = 
ProtobufUtil.toResultNoData(r);
-2563  ((HBaseRpcController) 
controller).setCellScanner(CellUtil.createCellScanner(r
-2564  .rawCells()));
-2565  addSize(context, r, null);
-2566} else {
-2567  pbr = 
ProtobufUtil.toResult(r);
-2568}
-2569builder.setResult(pbr);
-2570  }
-2571  if (r != null) {
-2572quota.addGetResult(r);
-2573  }
-2574  return builder.build();
-2575} catch (IOException ie) {
-2576  throw new ServiceException(ie);
-2577} finally {
-2578  MetricsRegionServer mrs = 
regionServer.metricsRegionServer;
-2579  if (mrs != null) {
-2580 

[25/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.Type.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.Type.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.Type.html
index c307d41..d82bfd8 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.Type.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.Action.Type.html
@@ -1020,8 +1020,8 @@
 1012  protected ClusterMetrics clusterStatus 
= null;
 1013  protected ServerName 
masterServerName;
 1014  protected MasterServices services;
-1015  protected boolean tablesOnMaster;
-1016  protected boolean 
onlySystemTablesOnMaster;
+1015  protected boolean 
onlySystemTablesOnMaster;
+1016  protected boolean maintenanceMode;
 1017
 1018  @Override
 1019  public void setConf(Configuration 
conf) {
@@ -1033,627 +1033,626 @@
 1025if (overallSlop < 0) overallSlop 
= 0;
 1026else if (overallSlop > 1) 
overallSlop = 1;
 1027
-1028this.tablesOnMaster = 
LoadBalancer.isTablesOnMaster(this.config);
-1029this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
-1030// If system tables on master, 
implies tablesOnMaster = true.
-1031if (this.onlySystemTablesOnMaster 
&& !this.tablesOnMaster) {
-1032  LOG.warn("Set " + TABLES_ON_MASTER 
+ "=true because " + SYSTEM_TABLES_ON_MASTER + "=true");
-1033  this.tablesOnMaster = true;
-1034}
-1035this.rackManager = new 
RackManager(getConf());
-1036if (useRegionFinder) {
-1037  regionFinder.setConf(conf);
-1038}
-1039// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
-1040LOG.info("slop=" + this.slop + ", 
tablesOnMaster=" + this.tablesOnMaster +
-1041  ", systemTablesOnMaster=" + 
this.onlySystemTablesOnMaster);
+1028this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
+1029
+1030this.rackManager = new 
RackManager(getConf());
+1031if (useRegionFinder) {
+1032  regionFinder.setConf(conf);
+1033}
+1034// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
+1035LOG.info("slop={}, 
systemTablesOnMaster={}",
+1036this.slop, 
this.onlySystemTablesOnMaster);
+1037  }
+1038
+1039  protected void setSlop(Configuration 
conf) {
+1040this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
+1041this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
 1042  }
 1043
-1044  protected void setSlop(Configuration 
conf) {
-1045this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
-1046this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
-1047  }
-1048
-1049  /**
-1050   * Check if a region belongs to some 
system table.
-1051   * If so, the primary replica may be 
expected to be put on the master regionserver.
-1052   */
-1053  public boolean 
shouldBeOnMaster(RegionInfo region) {
-1054return this.onlySystemTablesOnMaster 
&& region.getTable().isSystemTable();
-1055  }
-1056
-1057  /**
-1058   * Balance the regions that should be 
on master regionserver.
-1059   */
-1060  protected List 
balanceMasterRegions(Map> clusterMap) 
{
-1061if (masterServerName == null || 
clusterMap == null || clusterMap.size() <= 1) return null;
-1062List plans = 
null;
-1063List regions = 
clusterMap.get(masterServerName);
-1064if (regions != null) {
-1065  Iterator keyIt = 
null;
-1066  for (RegionInfo region: regions) 
{
-1067if (shouldBeOnMaster(region)) 
continue;
-1068
-1069// Find a non-master 
regionserver to host the region
-1070if (keyIt == null || 
!keyIt.hasNext()) {
-1071  keyIt = 
clusterMap.keySet().iterator();
-1072}
-1073ServerName dest = 
keyIt.next();
-1074if 
(masterServerName.equals(dest)) {
-1075  if (!keyIt.hasNext()) {
-1076keyIt = 
clusterMap.keySet().iterator();
-1077  }
-1078  dest = keyIt.next();
-1079}
-1080
-1081// Move this region away from 
the master regionserver
-1082RegionPlan plan = new 
RegionPlan(region, masterServerName, dest);
-1083if (plans == null) {
-1084  plans = new 
ArrayList<>();
-1085}
-1086plans.add(plan);
-1087  }
-1088}
-1089for (Map.Entry> server: clusterMap.entrySet()) {
-1090  if 
(masterServerName.equals(server.getKey())) continue;
-1091  for (RegionInfo region: 
server.getValue()) {
-1092if (!shouldBeOnMaster(region)) 
continue;
-10

[46/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.


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

Branch: refs/heads/asf-site
Commit: 3649682c3a66364761c84da6e58095ec0fc00f49
Parents: 1560578
Author: jenkins 
Authored: Fri Oct 19 14:52:51 2018 +
Committer: jenkins 
Committed: Fri Oct 19 14:52:51 2018 +

--
 acid-semantics.html | 4 +-
 apache_hbase_reference_guide.pdf| 25947 +
 book.html   |24 +-
 bulk-loads.html | 4 +-
 checkstyle-aggregate.html   |   550 +-
 checkstyle.rss  |16 +-
 coc.html| 4 +-
 dependencies.html   | 4 +-
 dependency-convergence.html | 4 +-
 dependency-info.html| 4 +-
 dependency-management.html  | 4 +-
 devapidocs/constant-values.html |11 +-
 devapidocs/index-all.html   |10 +-
 .../hadoop/hbase/backup/package-tree.html   | 4 +-
 .../hadoop/hbase/client/package-tree.html   |24 +-
 .../hadoop/hbase/coprocessor/package-tree.html  | 2 +-
 .../hbase/favored/FavoredNodeLoadBalancer.html  | 4 +-
 .../hadoop/hbase/filter/package-tree.html   |10 +-
 .../hadoop/hbase/io/hfile/package-tree.html | 8 +-
 .../apache/hadoop/hbase/ipc/package-tree.html   | 2 +-
 .../hadoop/hbase/mapreduce/package-tree.html| 4 +-
 .../master/HMaster.InitializationMonitor.html   |20 +-
 .../master/HMaster.MasterStoppedException.html  | 4 +-
 .../hbase/master/HMaster.RedirectServlet.html   |12 +-
 .../master/HMaster.TableDescriptorGetter.html   | 4 +-
 .../org/apache/hadoop/hbase/master/HMaster.html |   608 +-
 .../master/HMasterCommandLine.LocalHMaster.html | 2 +-
 .../hadoop/hbase/master/LoadBalancer.html   |75 +-
 .../hadoop/hbase/master/MasterRpcServices.html  |88 +-
 .../hadoop/hbase/master/MasterServices.html | 3 +-
 .../ServerManager.FlushedSequenceIdFlusher.html | 6 +-
 .../hadoop/hbase/master/ServerManager.html  |46 +-
 .../hbase/master/balancer/BaseLoadBalancer.html |96 +-
 .../balancer/FavoredStochasticBalancer.html | 4 +-
 .../master/balancer/SimpleLoadBalancer.html | 4 +-
 .../master/balancer/StochasticLoadBalancer.html | 4 +-
 .../hadoop/hbase/master/package-tree.html   | 6 +-
 .../hbase/master/procedure/package-tree.html| 4 +-
 .../org/apache/hadoop/hbase/package-tree.html   |18 +-
 .../hbase/procedure2/class-use/Procedure.html   |13 +
 .../hadoop/hbase/procedure2/package-tree.html   | 6 +-
 .../hadoop/hbase/quotas/package-tree.html   | 4 +-
 .../HRegionServer.CompactionChecker.html|14 +-
 .../HRegionServer.MovedRegionInfo.html  |16 +-
 .../HRegionServer.MovedRegionsCleaner.html  |16 +-
 .../HRegionServer.PeriodicMemStoreFlusher.html  |14 +-
 .../hbase/regionserver/HRegionServer.html   |   302 +-
 .../hbase/regionserver/RSRpcServices.html   |58 +-
 .../hadoop/hbase/regionserver/package-tree.html |20 +-
 .../regionserver/querymatcher/package-tree.html | 2 +-
 .../hbase/regionserver/wal/package-tree.html| 2 +-
 .../hadoop/hbase/replication/package-tree.html  | 2 +-
 .../hadoop/hbase/rest/model/package-tree.html   | 2 +-
 .../hbase/rsgroup/RSGroupBasedLoadBalancer.html | 2 +-
 .../hbase/rsgroup/RSGroupableBalancer.html  | 2 +-
 .../hbase/security/access/package-tree.html | 2 +-
 .../hadoop/hbase/thrift/package-tree.html   | 2 +-
 .../org/apache/hadoop/hbase/util/IdLock.html| 8 +-
 .../apache/hadoop/hbase/util/package-tree.html  | 8 +-
 .../apache/hadoop/hbase/wal/package-tree.html   | 2 +-
 .../zookeeper/MasterMaintenanceModeTracker.html |26 +-
 .../class-use/MasterMaintenanceModeTracker.html |42 +-
 .../hadoop/hbase/zookeeper/package-use.html |13 +-
 .../org/apache/hadoop/hbase/Version.html| 4 +-
 .../master/HMaster.InitializationMonitor.html   |  7334 ++---
 .../master/HMaster.MasterStoppedException.html  |  7334 ++---
 .../hbase/master/HMaster.RedirectServlet.html   |  7334 ++---
 .../master/HMaster.TableDescriptorGetter.html   |  7334 ++---
 .../org/apache/hadoop/hbase/master/HMaster.html |  7334 ++---
 .../hadoop/hbase/master/LoadBalancer.html   |   245 +-
 .../MasterRpcServices.BalanceSwitchMode.html|  1840 +-
 .../hadoop/hbase/master/MasterRpcServices.html  |  1840 +-
 .../hadoop/hbase/maste

[19/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.html
index c307d41..d82bfd8 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.html
@@ -1020,8 +1020,8 @@
 1012  protected ClusterMetrics clusterStatus 
= null;
 1013  protected ServerName 
masterServerName;
 1014  protected MasterServices services;
-1015  protected boolean tablesOnMaster;
-1016  protected boolean 
onlySystemTablesOnMaster;
+1015  protected boolean 
onlySystemTablesOnMaster;
+1016  protected boolean maintenanceMode;
 1017
 1018  @Override
 1019  public void setConf(Configuration 
conf) {
@@ -1033,627 +1033,626 @@
 1025if (overallSlop < 0) overallSlop 
= 0;
 1026else if (overallSlop > 1) 
overallSlop = 1;
 1027
-1028this.tablesOnMaster = 
LoadBalancer.isTablesOnMaster(this.config);
-1029this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
-1030// If system tables on master, 
implies tablesOnMaster = true.
-1031if (this.onlySystemTablesOnMaster 
&& !this.tablesOnMaster) {
-1032  LOG.warn("Set " + TABLES_ON_MASTER 
+ "=true because " + SYSTEM_TABLES_ON_MASTER + "=true");
-1033  this.tablesOnMaster = true;
-1034}
-1035this.rackManager = new 
RackManager(getConf());
-1036if (useRegionFinder) {
-1037  regionFinder.setConf(conf);
-1038}
-1039// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
-1040LOG.info("slop=" + this.slop + ", 
tablesOnMaster=" + this.tablesOnMaster +
-1041  ", systemTablesOnMaster=" + 
this.onlySystemTablesOnMaster);
+1028this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
+1029
+1030this.rackManager = new 
RackManager(getConf());
+1031if (useRegionFinder) {
+1032  regionFinder.setConf(conf);
+1033}
+1034// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
+1035LOG.info("slop={}, 
systemTablesOnMaster={}",
+1036this.slop, 
this.onlySystemTablesOnMaster);
+1037  }
+1038
+1039  protected void setSlop(Configuration 
conf) {
+1040this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
+1041this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
 1042  }
 1043
-1044  protected void setSlop(Configuration 
conf) {
-1045this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
-1046this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
-1047  }
-1048
-1049  /**
-1050   * Check if a region belongs to some 
system table.
-1051   * If so, the primary replica may be 
expected to be put on the master regionserver.
-1052   */
-1053  public boolean 
shouldBeOnMaster(RegionInfo region) {
-1054return this.onlySystemTablesOnMaster 
&& region.getTable().isSystemTable();
-1055  }
-1056
-1057  /**
-1058   * Balance the regions that should be 
on master regionserver.
-1059   */
-1060  protected List 
balanceMasterRegions(Map> clusterMap) 
{
-1061if (masterServerName == null || 
clusterMap == null || clusterMap.size() <= 1) return null;
-1062List plans = 
null;
-1063List regions = 
clusterMap.get(masterServerName);
-1064if (regions != null) {
-1065  Iterator keyIt = 
null;
-1066  for (RegionInfo region: regions) 
{
-1067if (shouldBeOnMaster(region)) 
continue;
-1068
-1069// Find a non-master 
regionserver to host the region
-1070if (keyIt == null || 
!keyIt.hasNext()) {
-1071  keyIt = 
clusterMap.keySet().iterator();
-1072}
-1073ServerName dest = 
keyIt.next();
-1074if 
(masterServerName.equals(dest)) {
-1075  if (!keyIt.hasNext()) {
-1076keyIt = 
clusterMap.keySet().iterator();
-1077  }
-1078  dest = keyIt.next();
-1079}
-1080
-1081// Move this region away from 
the master regionserver
-1082RegionPlan plan = new 
RegionPlan(region, masterServerName, dest);
-1083if (plans == null) {
-1084  plans = new 
ArrayList<>();
-1085}
-1086plans.add(plan);
-1087  }
-1088}
-1089for (Map.Entry> server: clusterMap.entrySet()) {
-1090  if 
(masterServerName.equals(server.getKey())) continue;
-1091  for (RegionInfo region: 
server.getValue()) {
-1092if (!shouldBeOnMaster(region)) 
continue;
-1093
-1094// Move this region to the 
master regionser

[41/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/master/HMasterCommandLine.LocalHMaster.html
--
diff --git 
a/devapidocs/org/apache/hadoop/hbase/master/HMasterCommandLine.LocalHMaster.html
 
b/devapidocs/org/apache/hadoop/hbase/master/HMasterCommandLine.LocalHMaster.html
index db0f525..f7f743b 100644
--- 
a/devapidocs/org/apache/hadoop/hbase/master/HMasterCommandLine.LocalHMaster.html
+++ 
b/devapidocs/org/apache/hadoop/hbase/master/HMasterCommandLine.LocalHMaster.html
@@ -191,7 +191,7 @@ extends 
 
 Fields inherited from class org.apache.hadoop.hbase.master.HMaster
-catalogJanitorChore,
 coprocessorServiceHandlers,
 cpHost,
 DEFAULT_HBASE_MASTER_WAIT_ON_SERVICE_IN_SECONDS,
 HBASE_MASTER_WAIT_ON_SERVICE_IN_SECONDS,
 loadBalancerTracker,
 MASTER,
 masterAddressSyncer,
 metaLocationSyncer,
 metricsMaster,
 rsFatals,
 serviceStarted,
 snapshotManager
+catalogJanitorChore,
 coprocessorServiceHandlers,
 cpHost,
 DEFAULT_HBASE_MASTER_WAIT_ON_SERVICE_IN_SECONDS,
 HBASE_MASTER_WAIT_ON_SERVICE_IN_SECONDS,
 loadBalancerTracker,
 MAINTENANCE_MODE,
 MASTER,
 masterAddressSyncer,
 metaLocationSyncer,
 metricsMaster,
 rsFatals,
 serviceStarted,
 snapshotManager
 
 
 

http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/org/apache/hadoop/hbase/master/LoadBalancer.html
--
diff --git a/devapidocs/org/apache/hadoop/hbase/master/LoadBalancer.html 
b/devapidocs/org/apache/hadoop/hbase/master/LoadBalancer.html
index 2200db0..db4a0e1 100644
--- a/devapidocs/org/apache/hadoop/hbase/master/LoadBalancer.html
+++ b/devapidocs/org/apache/hadoop/hbase/master/LoadBalancer.html
@@ -18,7 +18,7 @@
 catch(err) {
 }
 //-->
-var methods = 
{"i0":6,"i1":6,"i2":6,"i3":17,"i4":17,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6};
+var methods = 
{"i0":6,"i1":6,"i2":6,"i3":17,"i4":17,"i5":17,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6};
 var tabs = {65535:["t0","All Methods"],1:["t1","Static 
Methods"],2:["t2","Instance Methods"],4:["t3","Abstract 
Methods"],16:["t5","Default Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -198,78 +198,82 @@ extends org.apache.hadoop.conf.Configurable, 
 static boolean
-isSystemTablesOnlyOnMaster(org.apache.hadoop.conf.Configuration conf) 
+isMasterCanHostUserRegions(org.apache.hadoop.conf.Configuration conf) 
 
 
 static boolean
-isTablesOnMaster(org.apache.hadoop.conf.Configuration conf) 
+isSystemTablesOnlyOnMaster(org.apache.hadoop.conf.Configuration conf) 
 
 
+static boolean
+isTablesOnMaster(org.apache.hadoop.conf.Configuration conf) 
+
+
 void
 onConfigurationChange(org.apache.hadoop.conf.Configuration conf)
 This method would be called by the ConfigurationManager
  object when the Configuration object is reloaded from disk.
 
 
-
+
 void
 postMasterStartupInitialize()
 If balancer needs to do initialization after Master has 
started up, lets do that here.
 
 
-
+
 ServerName
 randomAssignment(RegionInfo regionInfo,
 https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true";
 title="class or interface in java.util">List servers)
 Get a random region server from the list
 
 
-
+
 void
 regionOffline(RegionInfo regionInfo)
 Marks the region as offline at balancer.
 
 
-
+
 void
 regionOnline(RegionInfo regionInfo,
 ServerName sn)
 Marks the region as online at balancer.
 
 
-
+
 https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">MapList>
 retainAssignment(https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">Map regions,
 https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true";
 title="class or interface in java.util">List servers)
 Assign regions to the previously hosting region server
 
 
-
+
 https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true";
 title="class or interface in java.util">MapList>
 roundRobinAssignment(https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true";
 title="class or interface in java.util">List regions,
 https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true";
 title="class or interface in java.util">List servers)
 Perform a Round Robin assignment of regions.
 
 
-
+
 void
 setClusterLoad(https://docs

[20/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.SwapRegionsAction.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.SwapRegionsAction.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.SwapRegionsAction.html
index c307d41..d82bfd8 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.SwapRegionsAction.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/balancer/BaseLoadBalancer.Cluster.SwapRegionsAction.html
@@ -1020,8 +1020,8 @@
 1012  protected ClusterMetrics clusterStatus 
= null;
 1013  protected ServerName 
masterServerName;
 1014  protected MasterServices services;
-1015  protected boolean tablesOnMaster;
-1016  protected boolean 
onlySystemTablesOnMaster;
+1015  protected boolean 
onlySystemTablesOnMaster;
+1016  protected boolean maintenanceMode;
 1017
 1018  @Override
 1019  public void setConf(Configuration 
conf) {
@@ -1033,627 +1033,626 @@
 1025if (overallSlop < 0) overallSlop 
= 0;
 1026else if (overallSlop > 1) 
overallSlop = 1;
 1027
-1028this.tablesOnMaster = 
LoadBalancer.isTablesOnMaster(this.config);
-1029this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
-1030// If system tables on master, 
implies tablesOnMaster = true.
-1031if (this.onlySystemTablesOnMaster 
&& !this.tablesOnMaster) {
-1032  LOG.warn("Set " + TABLES_ON_MASTER 
+ "=true because " + SYSTEM_TABLES_ON_MASTER + "=true");
-1033  this.tablesOnMaster = true;
-1034}
-1035this.rackManager = new 
RackManager(getConf());
-1036if (useRegionFinder) {
-1037  regionFinder.setConf(conf);
-1038}
-1039// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
-1040LOG.info("slop=" + this.slop + ", 
tablesOnMaster=" + this.tablesOnMaster +
-1041  ", systemTablesOnMaster=" + 
this.onlySystemTablesOnMaster);
+1028this.onlySystemTablesOnMaster = 
LoadBalancer.isSystemTablesOnlyOnMaster(this.config);
+1029
+1030this.rackManager = new 
RackManager(getConf());
+1031if (useRegionFinder) {
+1032  regionFinder.setConf(conf);
+1033}
+1034// Print out base configs. Don't 
print overallSlop since it for simple balancer exclusively.
+1035LOG.info("slop={}, 
systemTablesOnMaster={}",
+1036this.slop, 
this.onlySystemTablesOnMaster);
+1037  }
+1038
+1039  protected void setSlop(Configuration 
conf) {
+1040this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
+1041this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
 1042  }
 1043
-1044  protected void setSlop(Configuration 
conf) {
-1045this.slop = 
conf.getFloat("hbase.regions.slop", (float) 0.2);
-1046this.overallSlop = 
conf.getFloat("hbase.regions.overallSlop", slop);
-1047  }
-1048
-1049  /**
-1050   * Check if a region belongs to some 
system table.
-1051   * If so, the primary replica may be 
expected to be put on the master regionserver.
-1052   */
-1053  public boolean 
shouldBeOnMaster(RegionInfo region) {
-1054return this.onlySystemTablesOnMaster 
&& region.getTable().isSystemTable();
-1055  }
-1056
-1057  /**
-1058   * Balance the regions that should be 
on master regionserver.
-1059   */
-1060  protected List 
balanceMasterRegions(Map> clusterMap) 
{
-1061if (masterServerName == null || 
clusterMap == null || clusterMap.size() <= 1) return null;
-1062List plans = 
null;
-1063List regions = 
clusterMap.get(masterServerName);
-1064if (regions != null) {
-1065  Iterator keyIt = 
null;
-1066  for (RegionInfo region: regions) 
{
-1067if (shouldBeOnMaster(region)) 
continue;
-1068
-1069// Find a non-master 
regionserver to host the region
-1070if (keyIt == null || 
!keyIt.hasNext()) {
-1071  keyIt = 
clusterMap.keySet().iterator();
-1072}
-1073ServerName dest = 
keyIt.next();
-1074if 
(masterServerName.equals(dest)) {
-1075  if (!keyIt.hasNext()) {
-1076keyIt = 
clusterMap.keySet().iterator();
-1077  }
-1078  dest = keyIt.next();
-1079}
-1080
-1081// Move this region away from 
the master regionserver
-1082RegionPlan plan = new 
RegionPlan(region, masterServerName, dest);
-1083if (plans == null) {
-1084  plans = new 
ArrayList<>();
-1085}
-1086plans.add(plan);
-1087  }
-1088}
-1089for (Map.Entry> server: clusterMap.entrySet()) {
-1090  if 
(masterServerName.equals(server.getKey())) continue;
-1091  for (RegionInfo region: 
server.getValue()) {
-1092if (!shouldBeOn

[08/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerShippedCallBack.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerShippedCallBack.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerShippedCallBack.html
index 20e3eaa..b257d07 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerShippedCallBack.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerShippedCallBack.html
@@ -2493,1291 +2493,1293 @@
 2485  }
 2486
 2487  private boolean 
shouldRejectRequestsFromClient(HRegion region) {
-2488return 
regionServer.getReplicationSourceService().getSyncReplicationPeerInfoProvider()
-2489  
.checkState(region.getRegionInfo().getTable(), 
RejectRequestsFromClientStateChecker.get());
-2490  }
-2491
-2492  private void 
rejectIfInStandByState(HRegion region) throws DoNotRetryIOException {
-2493if 
(shouldRejectRequestsFromClient(region)) {
-2494  throw new DoNotRetryIOException(
-2495
region.getRegionInfo().getRegionNameAsString() + " is in STANDBY state.");
-2496}
-2497  }
-2498
-2499  /**
-2500   * Get data from a table.
-2501   *
-2502   * @param controller the RPC 
controller
-2503   * @param request the get request
-2504   * @throws ServiceException
-2505   */
-2506  @Override
-2507  public GetResponse get(final 
RpcController controller, final GetRequest request)
-2508  throws ServiceException {
-2509long before = 
EnvironmentEdgeManager.currentTime();
-2510OperationQuota quota = null;
-2511HRegion region = null;
-2512try {
-2513  checkOpen();
-2514  requestCount.increment();
-2515  rpcGetRequestCount.increment();
-2516  region = 
getRegion(request.getRegion());
-2517  rejectIfInStandByState(region);
-2518
-2519  GetResponse.Builder builder = 
GetResponse.newBuilder();
-2520  ClientProtos.Get get = 
request.getGet();
-2521  // An asynchbase client, 
https://github.com/OpenTSDB/asynchbase, starts by trying to do
-2522  // a get closest before. Throwing 
the UnknownProtocolException signals it that it needs
-2523  // to switch and do hbase2 
protocol (HBase servers do not tell clients what versions
-2524  // they are; its a problem for 
non-native clients like asynchbase. HBASE-20225.
-2525  if (get.hasClosestRowBefore() 
&& get.getClosestRowBefore()) {
-2526throw new 
UnknownProtocolException("Is this a pre-hbase-1.0.0 or asynchbase client? " +
-2527"Client is invoking 
getClosestRowBefore removed in hbase-2.0.0 replaced by " +
-2528"reverse Scan.");
-2529  }
-2530  Boolean existence = null;
-2531  Result r = null;
-2532  RpcCallContext context = 
RpcServer.getCurrentCall().orElse(null);
-2533  quota = 
getRpcQuotaManager().checkQuota(region, OperationQuota.OperationType.GET);
-2534
-2535  Get clientGet = 
ProtobufUtil.toGet(get);
-2536  if (get.getExistenceOnly() 
&& region.getCoprocessorHost() != null) {
-2537existence = 
region.getCoprocessorHost().preExists(clientGet);
-2538  }
-2539  if (existence == null) {
-2540if (context != null) {
-2541  r = get(clientGet, (region), 
null, context);
-2542} else {
-2543  // for test purpose
-2544  r = region.get(clientGet);
-2545}
-2546if (get.getExistenceOnly()) {
-2547  boolean exists = 
r.getExists();
-2548  if 
(region.getCoprocessorHost() != null) {
-2549exists = 
region.getCoprocessorHost().postExists(clientGet, exists);
-2550  }
-2551  existence = exists;
-2552}
-2553  }
-2554  if (existence != null) {
-2555ClientProtos.Result pbr =
-2556
ProtobufUtil.toResult(existence, region.getRegionInfo().getReplicaId() != 0);
-2557builder.setResult(pbr);
-2558  } else if (r != null) {
-2559ClientProtos.Result pbr;
-2560if 
(isClientCellBlockSupport(context) && controller instanceof 
HBaseRpcController
-2561&& 
VersionInfoUtil.hasMinimumVersion(context.getClientVersionInfo(), 1, 3)) {
-2562  pbr = 
ProtobufUtil.toResultNoData(r);
-2563  ((HBaseRpcController) 
controller).setCellScanner(CellUtil.createCellScanner(r
-2564  .rawCells()));
-2565  addSize(context, r, null);
-2566} else {
-2567  pbr = 
ProtobufUtil.toResult(r);
-2568}
-2569builder.setResult(pbr);
-2570  }
-2571  if (r != null) {
-2572quota.addGetResult(r);
-2573  }
-2574  return builder.build();
-2575} catch (IOException ie) {
-2576  throw new ServiceException(ie);
-2577} finally {
-2578  MetricsRegionServer mrs = 
regionSer

[34/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.MasterStoppedException.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.MasterStoppedException.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.MasterStoppedException.html
index 9fbe400..b7a2a38 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.MasterStoppedException.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.MasterStoppedException.html
@@ -215,3746 +215,3748 @@
 207import 
org.apache.hadoop.hbase.util.VersionInfo;
 208import 
org.apache.hadoop.hbase.zookeeper.LoadBalancerTracker;
 209import 
org.apache.hadoop.hbase.zookeeper.MasterAddressTracker;
-210import 
org.apache.hadoop.hbase.zookeeper.MasterMaintenanceModeTracker;
-211import 
org.apache.hadoop.hbase.zookeeper.RegionNormalizerTracker;
-212import 
org.apache.hadoop.hbase.zookeeper.ZKClusterId;
-213import 
org.apache.hadoop.hbase.zookeeper.ZKUtil;
-214import 
org.apache.hadoop.hbase.zookeeper.ZKWatcher;
-215import 
org.apache.hadoop.hbase.zookeeper.ZNodePaths;
-216import 
org.apache.yetus.audience.InterfaceAudience;
-217import 
org.apache.zookeeper.KeeperException;
-218import org.eclipse.jetty.server.Server;
-219import 
org.eclipse.jetty.server.ServerConnector;
-220import 
org.eclipse.jetty.servlet.ServletHolder;
-221import 
org.eclipse.jetty.webapp.WebAppContext;
-222import org.slf4j.Logger;
-223import org.slf4j.LoggerFactory;
-224
-225import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-226import 
org.apache.hbase.thirdparty.com.google.common.collect.ImmutableSet;
-227import 
org.apache.hbase.thirdparty.com.google.common.collect.Lists;
-228import 
org.apache.hbase.thirdparty.com.google.common.collect.Maps;
-229
-230import 
org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
-231import 
org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState;
-232import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas;
-233import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceViolationPolicy;
-234import 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription;
-235import 
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos;
-236
-237/**
-238 * HMaster is the "master server" for 
HBase. An HBase cluster has one active
-239 * master.  If many masters are started, 
all compete.  Whichever wins goes on to
-240 * run the cluster.  All others park 
themselves in their constructor until
-241 * master or cluster shutdown or until 
the active master loses its lease in
-242 * zookeeper.  Thereafter, all running 
master jostle to take over master role.
-243 *
-244 * 

The Master can be asked shutdown the cluster. See {@link #shutdown()}. In -245 * this case it will tell all regionservers to go down and then wait on them -246 * all reporting in that they are down. This master will then shut itself down. -247 * -248 *

You can also shutdown just this master. Call {@link #stopMaster()}. -249 * -250 * @see org.apache.zookeeper.Watcher -251 */ -252@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.TOOLS) -253@SuppressWarnings("deprecation") -254public class HMaster extends HRegionServer implements MasterServices { -255 private static Logger LOG = LoggerFactory.getLogger(HMaster.class); -256 -257 /** -258 * Protection against zombie master. Started once Master accepts active responsibility and -259 * starts taking over responsibilities. Allows a finite time window before giving up ownership. -260 */ -261 private static class InitializationMonitor extends HasThread { -262/** The amount of time in milliseconds to sleep before checking initialization status. */ -263public static final String TIMEOUT_KEY = "hbase.master.initializationmonitor.timeout"; -264public static final long TIMEOUT_DEFAULT = TimeUnit.MILLISECONDS.convert(15, TimeUnit.MINUTES); -265 -266/** -267 * When timeout expired and initialization has not complete, call {@link System#exit(int)} when -268 * true, do nothing otherwise. -269 */ -270public static final String HALT_KEY = "hbase.master.initializationmonitor.haltontimeout"; -271public static final boolean HALT_DEFAULT = false; -272 -273private final HMaster master; -274private final long timeout; -275private final boolean haltOnTimeout; -276 -277/** Creates a Thread that monitors the {@link #isInitialized()} state. */ -278InitializationMonitor(HMaster master) { -279 super("MasterInitializationMonitor"); -280 this.master = master; -281 this.timeout = master.getConfiguration().getLong(TIMEOUT_KEY, TIMEOUT_DEFAULT); -282 this.haltOnTimeout = master.getConfiguration().getBoolean(HALT_KEY, HALT_DEFAULT); -283


[10/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerCloseCallBack.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerCloseCallBack.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerCloseCallBack.html
index 20e3eaa..b257d07 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerCloseCallBack.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/RSRpcServices.RegionScannerCloseCallBack.html
@@ -2493,1291 +2493,1293 @@
 2485  }
 2486
 2487  private boolean 
shouldRejectRequestsFromClient(HRegion region) {
-2488return 
regionServer.getReplicationSourceService().getSyncReplicationPeerInfoProvider()
-2489  
.checkState(region.getRegionInfo().getTable(), 
RejectRequestsFromClientStateChecker.get());
-2490  }
-2491
-2492  private void 
rejectIfInStandByState(HRegion region) throws DoNotRetryIOException {
-2493if 
(shouldRejectRequestsFromClient(region)) {
-2494  throw new DoNotRetryIOException(
-2495
region.getRegionInfo().getRegionNameAsString() + " is in STANDBY state.");
-2496}
-2497  }
-2498
-2499  /**
-2500   * Get data from a table.
-2501   *
-2502   * @param controller the RPC 
controller
-2503   * @param request the get request
-2504   * @throws ServiceException
-2505   */
-2506  @Override
-2507  public GetResponse get(final 
RpcController controller, final GetRequest request)
-2508  throws ServiceException {
-2509long before = 
EnvironmentEdgeManager.currentTime();
-2510OperationQuota quota = null;
-2511HRegion region = null;
-2512try {
-2513  checkOpen();
-2514  requestCount.increment();
-2515  rpcGetRequestCount.increment();
-2516  region = 
getRegion(request.getRegion());
-2517  rejectIfInStandByState(region);
-2518
-2519  GetResponse.Builder builder = 
GetResponse.newBuilder();
-2520  ClientProtos.Get get = 
request.getGet();
-2521  // An asynchbase client, 
https://github.com/OpenTSDB/asynchbase, starts by trying to do
-2522  // a get closest before. Throwing 
the UnknownProtocolException signals it that it needs
-2523  // to switch and do hbase2 
protocol (HBase servers do not tell clients what versions
-2524  // they are; its a problem for 
non-native clients like asynchbase. HBASE-20225.
-2525  if (get.hasClosestRowBefore() 
&& get.getClosestRowBefore()) {
-2526throw new 
UnknownProtocolException("Is this a pre-hbase-1.0.0 or asynchbase client? " +
-2527"Client is invoking 
getClosestRowBefore removed in hbase-2.0.0 replaced by " +
-2528"reverse Scan.");
-2529  }
-2530  Boolean existence = null;
-2531  Result r = null;
-2532  RpcCallContext context = 
RpcServer.getCurrentCall().orElse(null);
-2533  quota = 
getRpcQuotaManager().checkQuota(region, OperationQuota.OperationType.GET);
-2534
-2535  Get clientGet = 
ProtobufUtil.toGet(get);
-2536  if (get.getExistenceOnly() 
&& region.getCoprocessorHost() != null) {
-2537existence = 
region.getCoprocessorHost().preExists(clientGet);
-2538  }
-2539  if (existence == null) {
-2540if (context != null) {
-2541  r = get(clientGet, (region), 
null, context);
-2542} else {
-2543  // for test purpose
-2544  r = region.get(clientGet);
-2545}
-2546if (get.getExistenceOnly()) {
-2547  boolean exists = 
r.getExists();
-2548  if 
(region.getCoprocessorHost() != null) {
-2549exists = 
region.getCoprocessorHost().postExists(clientGet, exists);
-2550  }
-2551  existence = exists;
-2552}
-2553  }
-2554  if (existence != null) {
-2555ClientProtos.Result pbr =
-2556
ProtobufUtil.toResult(existence, region.getRegionInfo().getReplicaId() != 0);
-2557builder.setResult(pbr);
-2558  } else if (r != null) {
-2559ClientProtos.Result pbr;
-2560if 
(isClientCellBlockSupport(context) && controller instanceof 
HBaseRpcController
-2561&& 
VersionInfoUtil.hasMinimumVersion(context.getClientVersionInfo(), 1, 3)) {
-2562  pbr = 
ProtobufUtil.toResultNoData(r);
-2563  ((HBaseRpcController) 
controller).setCellScanner(CellUtil.createCellScanner(r
-2564  .rawCells()));
-2565  addSize(context, r, null);
-2566} else {
-2567  pbr = 
ProtobufUtil.toResult(r);
-2568}
-2569builder.setResult(pbr);
-2570  }
-2571  if (r != null) {
-2572quota.addGetResult(r);
-2573  }
-2574  return builder.build();
-2575} catch (IOException ie) {
-2576  throw new ServiceException(ie);
-2577} finally {
-2578  MetricsRegionServer mrs = 
regionServer.metric

[30/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/LoadBalancer.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/LoadBalancer.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/LoadBalancer.html
index f890a44..52ae930 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/LoadBalancer.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/LoadBalancer.html
@@ -61,131 +61,134 @@
 053   * By default, it carries no tables.
 054   * TODO: Add any | system as flags to 
indicate what it can do.
 055   */
-056  public static final String 
TABLES_ON_MASTER = "hbase.balancer.tablesOnMaster";
+056  String TABLES_ON_MASTER = 
"hbase.balancer.tablesOnMaster";
 057
 058  /**
 059   * Master carries system tables.
 060   */
-061  public static final String 
SYSTEM_TABLES_ON_MASTER =
-062
"hbase.balancer.tablesOnMaster.systemTablesOnly";
-063
-064  // Used to signal to the caller that 
the region(s) cannot be assigned
-065  // We deliberately use 'localhost' so 
the operation will fail fast
-066  ServerName BOGUS_SERVER_NAME = 
ServerName.valueOf("localhost,1,1");
-067
-068  /**
-069   * Set the current cluster status.  
This allows a LoadBalancer to map host name to a server
-070   * @param st
-071   */
-072  void setClusterMetrics(ClusterMetrics 
st);
-073
-074  /**
-075   * Pass RegionStates and allow balancer 
to set the current cluster load.
-076   * @param ClusterLoad
-077   */
-078  void setClusterLoad(Map>> ClusterLoad);
-079
-080  /**
-081   * Set the master service.
-082   * @param masterServices
-083   */
-084  void setMasterServices(MasterServices 
masterServices);
-085
-086  /**
-087   * Perform the major balance 
operation
-088   * @param tableName
-089   * @param clusterState
-090   * @return List of plans
-091   */
-092  List 
balanceCluster(TableName tableName, Map> 
clusterState) throws HBaseIOException;
-094
-095  /**
-096   * Perform the major balance 
operation
-097   * @param clusterState
-098   * @return List of plans
-099   */
-100  List 
balanceCluster(Map> 
clusterState) throws HBaseIOException;
-102
-103  /**
-104   * Perform a Round Robin assignment of 
regions.
-105   * @param regions
-106   * @param servers
-107   * @return Map of servername to 
regioninfos
-108   */
-109  Map> roundRobinAssignment(
-110List regions,
-111List servers
-112  ) throws HBaseIOException;
-113
-114  /**
-115   * Assign regions to the previously 
hosting region server
-116   * @param regions
-117   * @param servers
-118   * @return List of plans
-119   */
-120  @Nullable
-121  Map> retainAssignment(
-122Map 
regions,
-123List servers
-124  ) throws HBaseIOException;
-125
-126  /**
-127   * Get a random region server from the 
list
-128   * @param regionInfo Region for which 
this selection is being done.
-129   * @param servers
-130   * @return Servername
-131   */
-132  ServerName randomAssignment(
-133RegionInfo regionInfo, 
List servers
-134  ) throws HBaseIOException;
-135
-136  /**
-137   * Initialize the load balancer. Must 
be called after setters.
-138   * @throws HBaseIOException
-139   */
-140  void initialize() throws 
HBaseIOException;
-141
-142  /**
-143   * Marks the region as online at 
balancer.
-144   * @param regionInfo
-145   * @param sn
-146   */
-147  void regionOnline(RegionInfo 
regionInfo, ServerName sn);
-148
-149  /**
-150   * Marks the region as offline at 
balancer.
-151   * @param regionInfo
-152   */
-153  void regionOffline(RegionInfo 
regionInfo);
-154
-155  /*
-156   * Notification that config has 
changed
-157   * @param conf
-158   */
-159  @Override
-160  void 
onConfigurationChange(Configuration conf);
-161
-162  /**
-163   * If balancer needs to do 
initialization after Master has started up, lets do that here.
-164   */
-165  void postMasterStartupInitialize();
-166
-167  /*Updates balancer status tag reported 
to JMX*/
-168  void updateBalancerStatus(boolean 
status);
-169
-170  /**
-171   * @return true if Master carries 
regions
-172   */
-173  static boolean 
isTablesOnMaster(Configuration conf) {
-174return 
conf.getBoolean(TABLES_ON_MASTER, false);
-175  }
-176
-177  static boolean 
isSystemTablesOnlyOnMaster(Configuration conf) {
-178return 
conf.getBoolean(SYSTEM_TABLES_ON_MASTER, false);
-179  }
-180}
+061  String SYSTEM_TABLES_ON_MASTER = 
"hbase.balancer.tablesOnMaster.systemTablesOnly";
+062
+063  // Used to signal to the caller that 
the region(s) cannot be assigned
+064  // We deliberately use 'localhost' so 
the operation will fail fast
+065  ServerName BOGUS_SERVER_NAME = 
Server

[35/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html
index 9fbe400..b7a2a38 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.InitializationMonitor.html
@@ -215,3746 +215,3748 @@
 207import 
org.apache.hadoop.hbase.util.VersionInfo;
 208import 
org.apache.hadoop.hbase.zookeeper.LoadBalancerTracker;
 209import 
org.apache.hadoop.hbase.zookeeper.MasterAddressTracker;
-210import 
org.apache.hadoop.hbase.zookeeper.MasterMaintenanceModeTracker;
-211import 
org.apache.hadoop.hbase.zookeeper.RegionNormalizerTracker;
-212import 
org.apache.hadoop.hbase.zookeeper.ZKClusterId;
-213import 
org.apache.hadoop.hbase.zookeeper.ZKUtil;
-214import 
org.apache.hadoop.hbase.zookeeper.ZKWatcher;
-215import 
org.apache.hadoop.hbase.zookeeper.ZNodePaths;
-216import 
org.apache.yetus.audience.InterfaceAudience;
-217import 
org.apache.zookeeper.KeeperException;
-218import org.eclipse.jetty.server.Server;
-219import 
org.eclipse.jetty.server.ServerConnector;
-220import 
org.eclipse.jetty.servlet.ServletHolder;
-221import 
org.eclipse.jetty.webapp.WebAppContext;
-222import org.slf4j.Logger;
-223import org.slf4j.LoggerFactory;
-224
-225import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-226import 
org.apache.hbase.thirdparty.com.google.common.collect.ImmutableSet;
-227import 
org.apache.hbase.thirdparty.com.google.common.collect.Lists;
-228import 
org.apache.hbase.thirdparty.com.google.common.collect.Maps;
-229
-230import 
org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
-231import 
org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState;
-232import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas;
-233import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceViolationPolicy;
-234import 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription;
-235import 
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos;
-236
-237/**
-238 * HMaster is the "master server" for 
HBase. An HBase cluster has one active
-239 * master.  If many masters are started, 
all compete.  Whichever wins goes on to
-240 * run the cluster.  All others park 
themselves in their constructor until
-241 * master or cluster shutdown or until 
the active master loses its lease in
-242 * zookeeper.  Thereafter, all running 
master jostle to take over master role.
-243 *
-244 * 

The Master can be asked shutdown the cluster. See {@link #shutdown()}. In -245 * this case it will tell all regionservers to go down and then wait on them -246 * all reporting in that they are down. This master will then shut itself down. -247 * -248 *

You can also shutdown just this master. Call {@link #stopMaster()}. -249 * -250 * @see org.apache.zookeeper.Watcher -251 */ -252@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.TOOLS) -253@SuppressWarnings("deprecation") -254public class HMaster extends HRegionServer implements MasterServices { -255 private static Logger LOG = LoggerFactory.getLogger(HMaster.class); -256 -257 /** -258 * Protection against zombie master. Started once Master accepts active responsibility and -259 * starts taking over responsibilities. Allows a finite time window before giving up ownership. -260 */ -261 private static class InitializationMonitor extends HasThread { -262/** The amount of time in milliseconds to sleep before checking initialization status. */ -263public static final String TIMEOUT_KEY = "hbase.master.initializationmonitor.timeout"; -264public static final long TIMEOUT_DEFAULT = TimeUnit.MILLISECONDS.convert(15, TimeUnit.MINUTES); -265 -266/** -267 * When timeout expired and initialization has not complete, call {@link System#exit(int)} when -268 * true, do nothing otherwise. -269 */ -270public static final String HALT_KEY = "hbase.master.initializationmonitor.haltontimeout"; -271public static final boolean HALT_DEFAULT = false; -272 -273private final HMaster master; -274private final long timeout; -275private final boolean haltOnTimeout; -276 -277/** Creates a Thread that monitors the {@link #isInitialized()} state. */ -278InitializationMonitor(HMaster master) { -279 super("MasterInitializationMonitor"); -280 this.master = master; -281 this.timeout = master.getConfiguration().getLong(TIMEOUT_KEY, TIMEOUT_DEFAULT); -282 this.haltOnTimeout = master.getConfiguration().getBoolean(HALT_KEY, HALT_DEFAULT); -283 this


[04/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/util/IdLock.Entry.html
--
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/util/IdLock.Entry.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/util/IdLock.Entry.html
index 8c0a262..5131a2c 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/util/IdLock.Entry.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/util/IdLock.Entry.html
@@ -89,114 +89,131 @@
 081  existing.wait();
 082} catch (InterruptedException 
e) {
 083  --existing.numWaiters;  // 
Remove ourselves from waiters.
-084  throw new 
InterruptedIOException(
-085  "Interrupted waiting to 
acquire sparse lock");
-086}
-087  }
-088
-089  --existing.numWaiters;  // 
Remove ourselves from waiters.
-090  existing.locked = true;
-091  return existing;
-092}
-093// If the entry is not locked, it 
might already be deleted from the
-094// map, so we cannot return it. 
We need to get our entry into the map
-095// or get someone else's locked 
entry.
-096  }
-097}
-098return entry;
-099  }
-100
-101  /**
-102   * Blocks until the lock corresponding 
to the given id is acquired.
-103   *
-104   * @param id an arbitrary number to 
lock on
-105   * @param time time to wait in ms
-106   * @return an "entry" to pass to {@link 
#releaseLockEntry(Entry)} to release
-107   * the lock
-108   * @throws IOException if interrupted
-109   */
-110  public Entry tryLockEntry(long id, long 
time) throws IOException {
-111Preconditions.checkArgument(time 
>= 0);
-112Entry entry = new Entry(id);
-113Entry existing;
-114long waitUtilTS = 
System.currentTimeMillis() + time;
-115long remaining = time;
-116while ((existing = 
map.putIfAbsent(entry.id, entry)) != null) {
-117  synchronized (existing) {
-118if (existing.locked) {
-119  ++existing.numWaiters;  // Add 
ourselves to waiters.
-120  try {
-121while (existing.locked) {
-122  existing.wait(remaining);
-123  if (existing.locked) {
-124long currentTS = 
System.currentTimeMillis();
-125if (currentTS >= 
waitUtilTS) {
-126  // time is up
-127  return null;
-128} else {
-129  // our wait is waken, 
but the lock is still taken, this can happen
-130  // due to JDK Object's 
wait/notify mechanism.
-131  // Calculate the new 
remaining time to wait
-132  remaining = waitUtilTS 
- currentTS;
-133}
-134  }
-135
-136}
-137  } catch (InterruptedException 
e) {
-138throw new 
InterruptedIOException(
-139"Interrupted waiting to 
acquire sparse lock");
-140  } finally {
-141--existing.numWaiters;  // 
Remove ourselves from waiters.
-142  }
-143  existing.locked = true;
-144  return existing;
-145}
-146// If the entry is not locked, it 
might already be deleted from the
-147// map, so we cannot return it. 
We need to get our entry into the map
-148// or get someone else's locked 
entry.
-149  }
-150}
-151return entry;
-152  }
-153
-154  /**
-155   * Must be called in a finally block to 
decrease the internal counter and
-156   * remove the monitor object for the 
given id if the caller is the last
-157   * client.
-158   *
-159   * @param entry the return value of 
{@link #getLockEntry(long)}
-160   */
-161  public void releaseLockEntry(Entry 
entry) {
-162synchronized (entry) {
-163  entry.locked = false;
-164  if (entry.numWaiters > 0) {
-165entry.notify();
-166  } else {
-167map.remove(entry.id);
-168  }
-169}
-170  }
-171
-172  /** For testing */
-173  void assertMapEmpty() {
-174assert map.isEmpty();
-175  }
-176
-177  @VisibleForTesting
-178  public void waitForWaiters(long id, int 
numWaiters) throws InterruptedException {
-179for (Entry entry;;) {
-180  entry = map.get(id);
-181  if (entry != null) {
-182synchronized (entry) {
-183  if (entry.numWaiters >= 
numWaiters) {
-184return;
-185  }
-186}
-187  }
-188  Thread.sleep(100);
-189}
-190  }
-191}
+084  // HBASE-21292
+085  // There is a rare case 
that interrupting and the lock owner thread call
+086  // releaseLockEntry at the 
same time. Since the owner thread found there
+087  // still one waiting, it 
won't remove the entry from the map. If the interrupted
+088  // thread is the last one 
waiting on the lock, and since an exception is thrown,
+089  // the '

[31/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html
--
diff --git a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html 
b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html
index 9fbe400..b7a2a38 100644
--- a/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html
+++ b/devapidocs/src-html/org/apache/hadoop/hbase/master/HMaster.html
@@ -215,3746 +215,3748 @@
 207import 
org.apache.hadoop.hbase.util.VersionInfo;
 208import 
org.apache.hadoop.hbase.zookeeper.LoadBalancerTracker;
 209import 
org.apache.hadoop.hbase.zookeeper.MasterAddressTracker;
-210import 
org.apache.hadoop.hbase.zookeeper.MasterMaintenanceModeTracker;
-211import 
org.apache.hadoop.hbase.zookeeper.RegionNormalizerTracker;
-212import 
org.apache.hadoop.hbase.zookeeper.ZKClusterId;
-213import 
org.apache.hadoop.hbase.zookeeper.ZKUtil;
-214import 
org.apache.hadoop.hbase.zookeeper.ZKWatcher;
-215import 
org.apache.hadoop.hbase.zookeeper.ZNodePaths;
-216import 
org.apache.yetus.audience.InterfaceAudience;
-217import 
org.apache.zookeeper.KeeperException;
-218import org.eclipse.jetty.server.Server;
-219import 
org.eclipse.jetty.server.ServerConnector;
-220import 
org.eclipse.jetty.servlet.ServletHolder;
-221import 
org.eclipse.jetty.webapp.WebAppContext;
-222import org.slf4j.Logger;
-223import org.slf4j.LoggerFactory;
-224
-225import 
org.apache.hbase.thirdparty.com.google.common.annotations.VisibleForTesting;
-226import 
org.apache.hbase.thirdparty.com.google.common.collect.ImmutableSet;
-227import 
org.apache.hbase.thirdparty.com.google.common.collect.Lists;
-228import 
org.apache.hbase.thirdparty.com.google.common.collect.Maps;
-229
-230import 
org.apache.hadoop.hbase.shaded.protobuf.ProtobufUtil;
-231import 
org.apache.hadoop.hbase.shaded.protobuf.generated.AdminProtos.GetRegionInfoResponse.CompactionState;
-232import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.Quotas;
-233import 
org.apache.hadoop.hbase.shaded.protobuf.generated.QuotaProtos.SpaceViolationPolicy;
-234import 
org.apache.hadoop.hbase.shaded.protobuf.generated.SnapshotProtos.SnapshotDescription;
-235import 
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos;
-236
-237/**
-238 * HMaster is the "master server" for 
HBase. An HBase cluster has one active
-239 * master.  If many masters are started, 
all compete.  Whichever wins goes on to
-240 * run the cluster.  All others park 
themselves in their constructor until
-241 * master or cluster shutdown or until 
the active master loses its lease in
-242 * zookeeper.  Thereafter, all running 
master jostle to take over master role.
-243 *
-244 * 

The Master can be asked shutdown the cluster. See {@link #shutdown()}. In -245 * this case it will tell all regionservers to go down and then wait on them -246 * all reporting in that they are down. This master will then shut itself down. -247 * -248 *

You can also shutdown just this master. Call {@link #stopMaster()}. -249 * -250 * @see org.apache.zookeeper.Watcher -251 */ -252@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.TOOLS) -253@SuppressWarnings("deprecation") -254public class HMaster extends HRegionServer implements MasterServices { -255 private static Logger LOG = LoggerFactory.getLogger(HMaster.class); -256 -257 /** -258 * Protection against zombie master. Started once Master accepts active responsibility and -259 * starts taking over responsibilities. Allows a finite time window before giving up ownership. -260 */ -261 private static class InitializationMonitor extends HasThread { -262/** The amount of time in milliseconds to sleep before checking initialization status. */ -263public static final String TIMEOUT_KEY = "hbase.master.initializationmonitor.timeout"; -264public static final long TIMEOUT_DEFAULT = TimeUnit.MILLISECONDS.convert(15, TimeUnit.MINUTES); -265 -266/** -267 * When timeout expired and initialization has not complete, call {@link System#exit(int)} when -268 * true, do nothing otherwise. -269 */ -270public static final String HALT_KEY = "hbase.master.initializationmonitor.haltontimeout"; -271public static final boolean HALT_DEFAULT = false; -272 -273private final HMaster master; -274private final long timeout; -275private final boolean haltOnTimeout; -276 -277/** Creates a Thread that monitors the {@link #isInitialized()} state. */ -278InitializationMonitor(HMaster master) { -279 super("MasterInitializationMonitor"); -280 this.master = master; -281 this.timeout = master.getConfiguration().getLong(TIMEOUT_KEY, TIMEOUT_DEFAULT); -282 this.haltOnTimeout = master.getConfiguration().getBoolean(HALT_KEY, HALT_DEFAULT); -283 this.setDaemon(true); -284} -285 -286@Override -287public void run() { -288 try { -289while (


[15/46] hbase-site git commit: Published site at 05d22ed960204183fbd9bd16f1dbca6410ccde76.

2018-10-19 Thread git-site-role
http://git-wip-us.apache.org/repos/asf/hbase-site/blob/3649682c/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
--
diff --git 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
index 90087b4..b2a9771 100644
--- 
a/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
+++ 
b/devapidocs/src-html/org/apache/hadoop/hbase/regionserver/HRegionServer.MovedRegionInfo.html
@@ -956,2857 +956,2858 @@
 948  // Try and register with the 
Master; tell it we are here.  Break if server is stopped or the
 949  // clusterup flag is down or hdfs 
went wacky. Once registered successfully, go ahead and start
 950  // up all Services. Use 
RetryCounter to get backoff in case Master is struggling to come up.
-951  RetryCounterFactory rcf = new 
RetryCounterFactory(Integer.MAX_VALUE,
-952  this.sleeper.getPeriod(), 1000 
* 60 * 5);
-953  RetryCounter rc = rcf.create();
-954  while (keepLooping()) {
-955RegionServerStartupResponse w = 
reportForDuty();
-956if (w == null) {
-957  long sleepTime = 
rc.getBackoffTimeAndIncrementAttempts();
-958  LOG.warn("reportForDuty failed; 
sleeping {} ms and then retrying.", sleepTime);
-959  
this.sleeper.sleep(sleepTime);
-960} else {
-961  
handleReportForDutyResponse(w);
-962  break;
-963}
-964  }
-965
-966  if (!isStopped() && 
isHealthy()) {
-967// start the snapshot handler and 
other procedure handlers,
-968// since the server is ready to 
run
-969if (this.rspmHost != null) {
-970  this.rspmHost.start();
-971}
-972// Start the Quota Manager
-973if (this.rsQuotaManager != null) 
{
-974  
rsQuotaManager.start(getRpcServer().getScheduler());
-975}
-976if (this.rsSpaceQuotaManager != 
null) {
-977  
this.rsSpaceQuotaManager.start();
-978}
-979  }
-980
-981  // We registered with the Master.  
Go into run mode.
-982  long lastMsg = 
System.currentTimeMillis();
-983  long oldRequestCount = -1;
-984  // The main run loop.
-985  while (!isStopped() && 
isHealthy()) {
-986if (!isClusterUp()) {
-987  if (isOnlineRegionsEmpty()) {
-988stop("Exiting; cluster 
shutdown set and not carrying any regions");
-989  } else if (!this.stopping) {
-990this.stopping = true;
-991LOG.info("Closing user 
regions");
-992
closeUserRegions(this.abortRequested);
-993  } else if (this.stopping) {
-994boolean allUserRegionsOffline 
= areAllUserRegionsOffline();
-995if (allUserRegionsOffline) 
{
-996  // Set stopped if no more 
write requests tp meta tables
-997  // since last time we went 
around the loop.  Any open
-998  // meta regions will be 
closed on our way out.
-999  if (oldRequestCount == 
getWriteRequestCount()) {
-1000stop("Stopped; only 
catalog regions remaining online");
-1001break;
-1002  }
-1003  oldRequestCount = 
getWriteRequestCount();
-1004} else {
-1005  // Make sure all regions 
have been closed -- some regions may
-1006  // have not got it because 
we were splitting at the time of
-1007  // the call to 
closeUserRegions.
-1008  
closeUserRegions(this.abortRequested);
-1009}
-1010LOG.debug("Waiting on " + 
getOnlineRegionsAsPrintableString());
-1011  }
-1012}
-1013long now = 
System.currentTimeMillis();
-1014if ((now - lastMsg) >= 
msgInterval) {
-1015  tryRegionServerReport(lastMsg, 
now);
-1016  lastMsg = 
System.currentTimeMillis();
-1017}
-1018if (!isStopped() && 
!isAborted()) {
-1019  this.sleeper.sleep();
-1020}
-1021  } // for
-1022} catch (Throwable t) {
-1023  if (!rpcServices.checkOOME(t)) {
-1024String prefix = t instanceof 
YouAreDeadException? "": "Unhandled: ";
-1025abort(prefix + t.getMessage(), 
t);
-1026  }
-1027}
-1028if (this.leases != null) {
-1029  
this.leases.closeAfterLeasesExpire();
-1030}
-1031if (this.splitLogWorker != null) {
-1032  splitLogWorker.stop();
-1033}
-1034if (this.infoServer != null) {
-1035  LOG.info("Stopping infoServer");
-1036  try {
-1037this.infoServer.stop();
-1038  } catch (Exception e) {
-1039LOG.error("Failed to stop 
infoServer", e);
-1040  }
-1041}
-1042// Send cache a shutdown.
-1043if (cacheConfig != null && 
cacheConfig.isBlockCacheEnabled()) {
-1044  
cac